Internet Commerce Development
For a listing of recent titles in the Artech House Computing Library, turn to the back o...
92 downloads
1803 Views
4MB Size
Report
This content was uploaded by our users and we assume good faith they have the permission to share this book. If you own the copyright to this book and it is wrongfully on our website, we offer a simple DMCA procedure to remove your content from our site. Start by pressing the button below!
Report copyright / DMCA form
Internet Commerce Development
For a listing of recent titles in the Artech House Computing Library, turn to the back of this book.
Internet Commerce Development
Craig Standing
Artech House Boston • London
Library of Congress Cataloging-in-Publication Data Standing, Craig. Internet commerce development / Craig Standing. p. cm. — (Artech House computing library) Includes bibliographical references and index. ISBN 1-58053-051-6 (alk. paper) 1. Electronic commerce. 2. System design. 3. Internet (Computer network) I. Title. II. Artech House computer library. HF5548.32.S73 2000 658’.054678—dc21 99-054232 CIP
British Library Cataloguing in Publication Data Standing, Craig Internet commerce development. — (Artech House computing library) 1. Internet (Computer network) 2. Electronic commerce I. Title 004.6’78 ISBN 1-58053-051-6 Cover design by Igor Valdman © 2000 ARTECH HOUSE, INC. 685 Canton Street Norwood, MA 02062 All rights reserved. Printed and bound in the United States of America. No part of this book may be reproduced or utilized in any form or by any means, electronic or mechanical, including photocopying, recording, or by any information storage and retrieval system, without permission in writing from the publisher. All terms mentioned in this book that are known to be trademarks or service marks have been appropriately capitalized. Artech House cannot attest to the accuracy of this information. Use of a term in this book should not be regarded as affecting the validity of any trademark or service mark. International Standard Book Number: 1-58053-051-6 Library of Congress Catalog Card Number: 99-054232 10 9 8 7 6 5 4 3 2 1
Contents xiii
Preface
1
Growth of the Internet and the Need for New Development Approaches Introduction Growth of the Internet History of the Internet Servers People Online The World Wide Web Internet Commerce and Business Opportunities Global Impact of the World Wide Web and Internet Commerce Types of Systems Internet for Customers Extranet for Suppliers Intranets Uses of the World Wide Web Communication Information Resource Business Recreation What Is Special About Internet Systems? Multifunctional Systems v
1 1 1 2 2 3 3 4 5 5 5 6 6 6 7 8 8 8 9 9
vi
Internet Commerce Development
2
Transcending Functional Boundaries Production Teams Diverse Stakeholders Web Site Evolution Evolutionary Alternative Management Strategies Open Development Lack of Site Development Methodologies The System Is the Organization! Information Systems Trends Why Traditional Systems Development Is Not Effective for Developing Internet Systems Structured IS Development Methodologies Prototyping, JAD, and RAD Techniques How the Internet Works Design Characteristics Internet Technology Internet Operations Accessing the Internet Internet Service Providers Commerce Service Providers Summary References
10 10 10 10 11 11 12 12 12
Introduction to Systems Development
27
Introduction The Systems Development Context The Systems Development Life Cycle Analysis Design Implementation Maintenance Skills Required by Systems Analysts Communication and Interpersonal Skills Analytical and Problem-Solving Skills Technical Skills Tasks Involved in Each Stage of Systems Development IS Planning Feasibility Phase
27 27 28 28 28 28 28 30 30 30 31
14 14 15 15 16 17 20 23 24 25 25 25
31 31 31
Contents
3
vii
Analysis Phase Requirements Phase Alternative Solutions Phase Design Phase Hardware and Software Acquisition Implementation Maintenance Information Gathering Process Modeling Hierarchy of Data Flow Diagrams Data Dictionary Entries Data Modeling Systems Development Methodologies What Is a Methodology? Examples of IS Methodologies Prototyping Soft Systems Methodology References
32 32 33 33 33 34 36 36 38 39 42 45 52 52 53 54 55 56
Overview of the Internet Commerce Development Methodology
57
Introduction Strategy Phase Assessing the Feasibility of Adopting Internet Commerce Project Complexity and Scope Management Structure for ICDM Meta-Development Strategy Guidelines Site and Component Development Component Focus Component Methodology Strategy Analysis Design Implementation Evolution Phase Beyond the Methodology Summary References
57 58 61 61 63 65 67 67 67 68 68 68 68 68 69 69 70
viii
Internet Commerce Development
4
5
Strategic Planning and Internet Systems
71
Introduction Business Strategies and Goals The Strategic Planning Approach Levels of Planning Information Technology and Strategic Planning Strategies for Developing Internet Commerce Internet Commerce Development Methodology SWOT Analysis Course of Action Travel Agency Case Study, Part 1 Strategic Options Business Process Reengineering Option 1: Transformation Travel Agency Case Study, Part 2 Option 2: Process Reengineering Option 3: Process Improvement Functional Level Strategy References
71 72 72 73 74 74 75 76 84 84 85 86 86 89 89 91 92 93
Systems Analysis for Internet Systems
95
Introduction Analysis of the Problems How to Be Creative and Innovative in the Use of the Internet Assessing Feasibility Operational Feasibility Technical Feasibility Economic Feasibility Strategies and Analysis Approaches Document Publishing Systems Basic Interactive Web Systems Complex Web Transaction Systems Requirements Analysis Techniques Web Requirements Sessions Group Requirements Sessions Consultant Support Learning From Others Prototypes
95 96 97 97 97 98 98 99 99 100 101 102 102 103 104 104 105
Contents
Functional Categories of Internet Applications Retail Transaction Systems Marketing and Promotion Systems After-Sales Support Systems, Customer Service Systems, and Inquiry Systems Public Relations Systems Transformation Process Reengineering Process Changes or Enhancements Meta-Development Strategies and Framework Plan the Entire Site Plan the Core of the Web Site Plan and Centrally Develop the Core of the Web Site Allow Unregulated Development of the Entire Web Site Plan the Entire Web Site, Develop the Core, and Then Incrementally Develop the Rest of the Site Defining the Users Working Across Departments Working Across Organizations Working With Different Cultures and Languages Modeling Techniques for Internet Systems Project Management and Documentation Acquiring and Working With Consultants and Vendors Being a Good Client References
6
ix
105 105 106 107 107 107 108 109 109 110 111 111 112
112 113 114 114 114 115 115 116 117 118
Designing Internet Systems
119
Introduction Client/Server Technology Infrastructure Web Technology Infrastructure TCP/IP Network Web Server Platform Web Server Software Web Browser Web Integrated Development Tools Web Database Application Development Tools
119 119 120 120 121 121 121 122 123
x
Internet Commerce Development
7
8
Common Gateway Interface Bridging Legacy Systems to the Web Web Database Application Design Development Tools Case Studies Design Models Web Site Design Design in Action Evaluating the Web Site Design Skills Required by Web Designers Prototyping the Web Interface References
123 124 125 126 127 127 138 140 143 145 146
Implementing Internet Systems
147
Introduction Web Authoring Tools Web Client Programming Languages Open Systems GUI and Multimedia Development Object-Oriented Language Threads and Multithreading Distributed Computing on the Internet Scripting ActiveX Controls Security Risk Analysis Physical Security Network Security: Firewalls Virus Attacks Encryption Authentication Payment Options Planning Implementation Measuring the Effectiveness of the Web Site References
147 147 148 150 152 153 155 156 156 157 157 158 158 159 160 161 161 162 163 164 166
Maintenance and Management of the Web Site Resource
167
Introduction Strategies for Managing the Internet Resource
167 167
Contents
9
xi
Management Structures The Bureaucratic IS Resource Web Site Management Strategies Alternative Management Structures for Web Site Management Interview 1: Edith Cowan University Interview 2: Joondalup City Council Interview 3: ABC Broadcasting Company Interview 4: WesComm Pty Ltd. Interview 5: Curtin University Interview 6: Alexander College Summary of Approaches Strengths and Weaknesses With the Approaches Issues for Practitioners Maintaining Web Sites Administration of the Web Site Summary References
169 170 170 171 172 173 174 175 175 175 176 176 178 179 181 183 184
Case Studies
187
Introduction Travel Industry and the Role of the Internet Travel Agencies and Technology Opportunities Threats In Practice Lessons to Be Learned on Internet Commerce Restructuring of a Business Sector Retailing Via the Internet The Wine Retailing Industry Computer Hardware Retailing Virtual Organizations and the Internet Internet/Intranet Development at Edith Cowan University ECU’s Internet and Intranet Virtual Campus Lessons From the Cases References
187 187 188 188 189 191 192 195 195 195 199 201 202 202 203 205 207
xii
Internet Commerce Development
10
Sustaining the Internet Commerce Drive
209
Introduction The Changing Business and Organizational Environment Organizational Changes Making ICDM Work New Organizational Forms and Management Styles Role of the Individual Managing Operations Acquiring and Allocating Staff Communication Skills Project Failure Monitoring Project Progress Developments in Information Technology What Is ERP? SAP and the Internet Implications Summary References
209
211 212 214 214 216 217 219 221 221 222 223 223 225
About the Author
227
Index
229
210 210 210
Preface It is being argued in the information systems (IS) field that traditional IS methodologies cannot adequately cope with the process of developing Internet- or Web-based systems. Now that developing a Web presence has taken on strategic significance within many organizations, choosing the right development approach has become critical. The goal of this book is to inform practitioners of the strategies and techniques that can be used when developing Internet commerce applications. This book provides detailed coverage of the Internet Commerce Development Methodology (ICDM), which was developed by Dr. Craig Standing to provide a flexible framework for creating and refining Internet commerce–related systems. ICDM has a strong business strategy and analysis component that forms part of the overall methodology. The book covers techniques for the development of Internet commerce applications including requirements gathering, Web design issues, and implementation tools. Internet commerce systems are a new type of application being developed within organizations and their applications have many distinctive features. To take advantage of the opportunities that they offer, these distinctive features, listed next, should be understood by systems developers. • Internet commerce is a business direction rather than an IS application. • Internet commerce applications are continually evolving and, there-
fore, the notion of project completion is inappropriate. • Internet commerce applications often evolve into multifunctional systems. xiii
xiv
Internet Commerce Development
• The multifunctionality of many Internet commerce systems forces
organizations to transcend traditional functional boundaries. • Due to the multifunctionality of many Web sites, the stakeholders in its success are made up of diverse groups both internal and external to the organization. • The teams required for Internet applications development need to have a business focus and be led by a “film producer”–type figure who has expertise in the technical, marketing, and business aspects of the organization. This book explains that dynamic changes are unlikely to happen in isolation within a company. The environment needs to be conducive to the successful development and leveraging of Internet commerce. Traditional organizational structures, traditional management techniques, and traditional systems development approaches must adapt to the changing business world. This book and the ICDM will enable managers, practitioners, and business owners to develop and implement a focused and flexible Web development strategy.
1 Growth of the Internet and the Need for New Development Approaches Introduction This chapter provides an introduction to the Internet. The growth of the Internet and the World Wide Web are described. The background of the growth in Internet commerce, which has become a revolution, is also explained with some examples of the types of business opportunities available. Also discussed are the distinctive features of Web sites and Web-based applications. Internet-based applications differ in a variety of ways from traditional information systems (IS) applications. As a developer, it is important to be aware of these features so that the appropriate methods, design approaches, and tools can be employed during the development process. Finally, the chapter explains how the Internet works by covering the various hardware and software technologies that are part of the Internet infrastructure.
Growth of the Internet The Internet is a worldwide network of computers that basically use the same set of rules to transmit data (protocol). Organizations such as private businesses, governmental departments, and universities typically have a local area network with a server that is connected to the Internet. The servers are connected to the national and international telecommunications infrastructure. Most organizations and individuals require an Internet service provider (ISP) to “hook up” to 1
2
Internet Commerce Development
the Internet. Examples of ISPs include America Online (AOL), Telstra Big Pond, and IBM Global Network. History of the Internet The Internet began as an idea in the mid-1960s that had its basis in a U.S. Defense Department network called ARPANET. It was an experimental network designed specifically to withstand various forms of attack on the communications lines. In the ARPANET model, communication always occurs between a source and a destination computer. To send a message, the data was put into a packet of data called an Internet protocol packet and addressed. The computers, not the network, were given the responsibility of ensuring that the communication was completed. The approach worked on the premise that the network itself was unreliable and open to attack. In the early 1980s, universities began to use the Internet as an inexpensive and convenient method for communicating among themselves. From there, the Internet expanded rapidly as the telecommunications infrastructure improved and its use by commercial organizations increased. Servers Servers that are connected to the Internet are known as Internet hosts and are usually maintained by the organizations to which they belong. The number of servers connected to the Internet has risen dramatically during recent years. As of early 1999, about 30 million computers were connected to the Internet: 16 million in the United States, just over 1 million in Japan, and just under 1 million in Germany and the United Kingdom (http://www.nua.ie/surveys/index.cgi). This estimate is measured by counting the number of Internet addresses that have been assigned a name. As with all data related to the Internet, however, these figures are changing rapidly. A number of Web sites exist that provide reasonable estimates of Internet servers, and these sites are updated regularly. The Internet is divided into a number of top-level domains (domains are explained in detail later). At one time there were only six domains: .com, .edu, .mil, .org, .gov, and .net for networks. With the growth of the Internet, each country was allocated its own top-level domain, except for the United States. Each country then allocates subdomains to be used with the top-level country domain; for example, edu.au represents educational sites in Australia. Domain surveys are unable to estimate how many people use the Internet because there is no way of telling whether one person or 100 people in a business are accessing the system. These estimates do not usually consider the ratio of computers to people in that country. When they do, Finland is considered to
Growth of the Internet and the Need for New Development Approaches
3
be at the top of the list (Table 1.1). Finland has an Internet connection for every 11 people in the country using 1996 population statistics. People Online Estimating the number of users of the Internet is an art. The estimates in Table 1.2 were arrived at by referring to surveys published during the past 2 years. From these estimates the total number of Internet users is now greater than the populations of most countries: The United States accounts for around 50% of users; Japan and the United Kingdom have around 10 and 8 million users, respectively. A distinctive feature of the Internet is the relative geographical inequality in users. Some parts of the world, such as Africa and South America, are populous regions, but have proportionately few people on the Internet. The top 15 countries account for 89% of the global online population.
The World Wide Web The World Wide Web (WWW; also referred to as the Web) is a network of information sites. The sites are created using hypertext, which is a method of linking information and screens to allow simple navigation and linking of sources of information. Because the Web is expanding so rapidly, the information it provides is largely unorganized and unstructured and is available from various servers throughout the world.
Table 1.1 People per Internet Connection for Selected Countries (http://www.nua.ie/surveys/index.cgi)
Country
Number of People for Each Internet Connection
Finland
11
United States
15
United Kingdom
59
Germany
83
Japan
107
South Africa
342
4
Internet Commerce Development Table 1.2 Estimates of Online Users of the Internet as of February 1999 (NUA Internet Surveys; http://www.nua.net/survey/how_many_online/index.html)
Region
Number of Internet Users (in Millions)
World total
153.5
Africa
1.14
Asia/Pacific
26.55
Europe
33.71
Middle East
0.78
United States
76.5
Canada
6.49
South America
4.5
The Web was first developed in 1989 at the European Laboratory for Particle Physics (CERN) in Geneva and has grown to a huge number of information repositories today. The success of the Web owes much to the simplicity of hypertext, which is a type of “point and click” interface that was used much earlier on in Apple Computer’s Hypercard system.
Internet Commerce and Business Opportunities Electronic commerce is the online exchange of goods, services, and money within firms and between firms and their customers. The growth in electronic commerce is proving to be a business revolution. It is a revolution because electronic commerce, particularly over the Internet, is so profoundly different from traditional business in so many ways. Business over the Internet can be conducted around the clock, 365 days a year. A business can reach potential customers around the world. Many companies that once thrived on dealing with goods and services that were bought from a wholesaler and repackaged for customers are now feeling the threat of disintermediation. This term encompasses the process by which such companies are being bypassed by the Internet revolution as more companies that create the goods or service interact directly with the consumer without the aid of intermediaries.
Growth of the Internet and the Need for New Development Approaches
5
Electronic data interchange (EDI) is the sale of goods and services online, typically on proprietary networks. For example, travel agencies subscribe to various reservation systems that allow the booking of airline seats and hotel rooms. These systems are not available to customers directly. The latest explosion, however, is in the use of the World Wide Web as a vehicle for electronic commerce. Some prefer to term this type of business Internet commerce to distinguish it from other forms of electronic commerce. However, a broad view can still be taken of Internet commerce. Not all business revolves around financial transactions. Business encompasses the relationship-building process that takes place between suppliers and consumers, for example. It includes a series of stages or phases before and after the transaction is made, such as information provision and after-sales service. If organizations explore the broader dimensions of Internet commerce, then they are more likely to tap into a greater amount of the potential it provides.
Global Impact of the World Wide Web and Internet Commerce The impact of the Web on business is radical and far reaching. Usually, it is not just a case of transferring current business operations to the Web; instead, the process involves redefining business models, reinventing business processes, changing corporate cultures, and improving relationships with customers and suppliers in order to reach new levels. Web-based electronic commerce has the potential to change the nature of trade. Employees can work from home, cooperate in virtual teams, and be part of decentralized organizations.
Types of Systems Internet for Customers Various aspects of Web-based electronic commerce can be exploited by companies, some of which are listed here and shown in Figure 1.1: 1. Using the Internet to build customer-client relationships by having customers interact directly with the Web site; 2. Gathering information from customers and potential customers to create customer profiles that can be used in marketing and product development;
6
Internet Commerce Development
Person or company
Internet
Extranet Business
Business supplier/ partner
Intranet
Figure 1.1 Types of Internet commerce systems.
3. Creating information partnerships between organizations to provide better service to customers; 4. Selling of products and services; 5. Providing specialized information according to the profile of the user; 6. Providing information and products that can be downloaded by the user. Extranet for Suppliers Extranets can be developed to provide data and information to suppliers. In this way the supplier can be responsible for checking the levels of stock at their customer’s site and sending new stock when appropriate. Intranets Intranets can be used for a range of purposes (Figure 1.2). One of the main uses is as a document management system for the organization. They can be used for such things as providing an interface to access databases, downloading documents, providing access to company manuals and documents, and providing information on the latest company initiatives. Intranet applications used externally can also be used internally to provide information and to process internal transactions.
Uses of the World Wide Web The Web has many practical uses. It is used as a research tool, for selling and advertising products and services, and for recreational purposes—to mention
Growth of the Internet and the Need for New Development Approaches
7
Figure 1.2 Intranet application.
just a few. Uses for the Web are still being discovered, and these will expand as new ideas, new business models, and new technology are developed. Communication Electronic mail is a fast and inexpensive way of communicating with others and is one of the main uses of the Internet. Newsgroups, mail groups, and chat rooms are other ways of communicating via the Web. Newsgroups list messages about certain topics organized in a hierarchy. The levels of the hierarchy are separated by a period, for example software.os.unix
is a discussion list on software that has a subgroup on UNIX, the operating system. You can read and often contribute to the discussion list.
8
Internet Commerce Development
Mail groups are a form of electronic mail that involve large numbers of people. They are particularly prevalent in the academic world. People can subscribe to the mail groups and broadcast messages to the entire group. Some groups are moderated, which means that someone checks the posting to see if it conforms to the mail group’s guidelines before it is released to the entire group. People can unsubscribe from the list of participants, which means part of the administrative burden is automated. Chat rooms are interactive forums for discussing various topics. A number of people can be engaged in public and private chat sessions. Usually the rooms are dedicated to discussing certain topics, although some are available for more general discussion. The drawback with chat rooms, however, is that they are a synchronous form of communication. In other words, all people involved have to be online at the same time to participate in the discussion. Information Resource Many public and private organizations make available vast amounts of information on their Web sites. News, weather, company information, scientific information, and travel and tourism-related information, for example, are all made freely available. The Web has been termed the “world’s biggest rubbish heap” because so many people have created Web pages on their favorite topics. Much of the information is anecdotal and usually unreliable as a quotable source of information. Organizations are sometimes unwilling to present valuable information free of charge. Nonetheless, a wealth of useful information on thousands of topics can be found on the Web. Business The commercial exploitation of the Web is in its infancy. However, a growing number of organizations are beginning to analyze ways of doing business over the Web. For example, travel-related products have been available for purchase on the Web for some time (Figure 1.3). The Web provides a convenient way to shop and purchase goods from the comfort of your home or office. Recreation More and more domestic users of the Internet see the Web as a form of recreation. People can browse through data about their favorite soccer team, visit art galleries, watch video and movie clips, and much more.
Growth of the Internet and the Need for New Development Approaches
9
Figure 1.3 Yahoo’s Australian travel site (http://www2.travel.com.au/).
What Is Special About Internet Systems? Internet systems are a new type of application being developed within organizations. They have distinctive features that should be understood by systems developers. Multifunctional Systems Web sites often evolve into multifunctional systems. Web sites can start out as a solitary Web page providing information about the company and then move on to become multifunctional sites. They can evolve into systems for providing information to users or customers, for developing relationships with customers, for enabling customers to perform transactions, and for documenting management systems for internal users. An example of a multifunctional site is the Web site of Edith Cowan University (http://www.cowan.edu.au/).
10
Internet Commerce Development
Transcending Functional Boundaries The multifunctionality of many systems forces organizations to transcend traditional functional boundaries. When the emphasis becomes “How do we meet the customer’s needs?” then sales, marketing, customer service, and IS, for example, must collaborate and in doing so forget about traditional boundaries and internal politics. Production Teams The focus of IS teams developing applications has been on implementing technology. Even teams made up of different business representatives may not be adequate for developing Web applications, especially if they are IS led. The problems associated with representative teams are that members do not speak the same language and have different goals and expectations. The teams that are required for Internet applications development must have a business focus and be led by a “film producer”–type figure who has expertise in the technical, marketing, and business aspects of the organization. The analogy of a film production team is apposite because such teams have one goal in mind, but manage many diverse skills and tasks during the process of creating a film. Diverse Stakeholders Due to the multifunctionality of many Web sites, the site’s stakeholders are frequently quite diverse [1]. Stakeholders can include people internal or external to the organization. Internal stakeholders could be specialized categories of employees, and external stakeholders could be current customers or key suppliers. These stakeholder groups can live locally or reside interstate or overseas. Overseas users may have a different cultural and linguistic background and this may have to be considered in Web application development [2]. As a consequence of the diversity of stakeholders, responsibility for the Web site within the organization can be ambiguous with the potential for the overall management of the Web strategy to be given little consideration [3]. Web Site Evolution The spiral in Figure 1.4 illustrates the evolutionary nature of Web site applications. The links in the spiral provide strength to the structure because the entire organism is an arrangement of interdependent cells. Overall, the strengths of the whole application should compensate for any component weaknesses, such as design flaws. The fractal-like design (each component is a
Growth of the Internet and the Need for New Development Approaches
All components linked
11
A fractal-like component
A component of the Web site
Figure 1.4 The Web development approach.
small replica of the complete form) represents the organic and evolutionary aspects of the application. Evolutionary Alternative Management Strategies The content and functionality of Web sites change over time. Because of this, the notion of project completion is inappropriate. Even the standard sixmonthly update reviews used with traditional IS applications may be unsuitable for managing the rapid amount of change required by Web sites, which should be viewed as organic systems that are continually adapting to their environment. Some components of Web sites flourish under certain conditions while other components become redundant and wither away. Systems can start off as intranets and go on to develop an Internet or extranet component, and others start off as Internets/extranets and develop an intranet component. Open Development Developments and amendments made to the Web site do not necessarily have to be done by IS experts. The work can be done through HTML code or more likely Web authoring tools, such as Macromedia Dreamweaver or Microsoft FrontPage, which attempt to simplify the process of developing Web pages and applications [1]. When the environment is one in which the user departments
12
Internet Commerce Development
or individual users have the skills, tools, and authority to make additions and amendments to the system, careful consideration needs to be given to the overall management process of the application to avoid chaos. Lack of Site Development Methodologies Web site development lacks the type of specialized methodologies that exist for more traditional IS applications. Tools exist for documenting Web sites and monitoring their activity, but they do not form an integrated suite of tools for the development process. Likewise, evaluation of Web site efficiency and effectiveness cannot be done in the same manner used by IS professionals to evaluate typical core business applications. The System Is the Organization! Traditionally, IS has been seen as a function supporting the running of the organization. The combination of developments in technology and innovations in organizational structure have led to the development of organizations where IS does not just play a supporting role, but actually becomes the system. This is the case with virtual organizations. Virtual organizations are companies whose core business activities are carried out via online communication, primarily through the World Wide Web. To the customer the organization is the Web system. In these organizations it is difficult to divorce IS from the other activities of the organization. One of the best known examples of a virtual organization is Amazon.com, which is a large online bookstore (Figure 1.5) (http://www.amazon.com/). Although most organizations are not virtual organizations, the phenomenon of developing a Web presence has taken on strategic importance to them. Some customers may only know the organization and interact with it through its Web site. Therefore, this means that the organization must put great thought and effort into developing an appropriate Web strategy.
Information Systems Trends The traditional function of organizational information systems has been software development, maintenance, and management; database development and administration; application package installation; and user support [4]. In most cases the IS domain has been internal to the organization and has catered to the employees of the organization [5].
Growth of the Internet and the Need for New Development Approaches
13
Figure 1.5 A virtual organization—Amazon.com (http://www.amazon.com/).
One trend we have begun to see is that of the IS function moving from a centralized function to one that is distributed across the organization [6]. While this is true for many applications, the IS staff is still responsible for developing and managing the data/information resource, although they may be dispersed across the organization in user departments. This IS responsibility often entails managing the appropriate database content and system design features across the organization usually in collaboration with user groups. In many cases, the IS staff are the only ones with the expertise and authority to make the changes to systems. Despite the trend to distributed IS, some applications are still centrally designed and managed, the payroll system being a typical example. There is still the fear for some managers that a move to distributed systems will mean a loss of control over the data and a resultant lack of effective management of the information resource [4]. The Internet is redefining the role of information systems in organizations. Functional boundaries are blurring as the primary object shifts to providing a
14
Internet Commerce Development
better service or product for customers. The stakeholders for a Web-based system may be as diverse as the stakeholders in the business. These shifts require a reappraisal in the approaches, methods, and teams required for developing Internet systems. The “old ways” of developing systems, in many cases, are no longer appropriate for the Internet commerce paradigm.
Why Traditional Systems Development Is Not Effective for Developing Internet Systems It is currently being argued in the information systems field that the more traditional IS methodologies cannot cope adequately with the process of developing Internet or Web-based systems. A quick look at the history of organizational computing shows that there have been a number of milestone developments (Figure 1.6). Organizational computing started with centralized computing using mainframes. Minicomputers were used in smaller organizations and also in larger organizations for distributed applications. This started a trend toward more decentralized computing, which accelerated with the introduction of microcomputers into organizations. The networking of these machines eventually led to a client/server arrangement where some applications were centralized and others distributed throughout the organization. The latest development in the evolution of organizational computing has been the introduction of Web-based computing. Web-based computing is a term used to describe the use of intranets, extranets, and the Internet as a key—and frequently unifying—feature within the organization. Structured IS Development Methodologies Structured methodologies were designed to cope with the development of systems for the mainframe, minicomputer, and microcomputer eras. They have largely failed to address the issues of client/server computing and, of course, more recently Web-based computing. Structured methodologies are most
Mainframe computing
Minicomputer
Microcomputing
Figure 1.6 The evolution of organizational computing.
Client/server computing
Web-based computing
Growth of the Internet and the Need for New Development Approaches
15
appropriate for projects that are relatively well defined in scope, can be completed in a reasonable time frame, and have a clear development phase. Internet applications do not fit easily into this package. As previously mentioned, one of the key distinguishing features of Web site development is its evolutionary nature. The multifunctional feature of Web application development is also an aspect that does not fit well with traditional systems development methodologies. A criticism of structured methodologies is that they concentrate on documentation rather than products and that this slows down the systems development process. This last factor is particularly significant for the development of Web applications because they often have to respond to rapidly changing market conditions. Hence, the requirements of the system change frequently. A fast cycle of taking the requirements through to implementation is important. Prototyping, JAD, and RAD Techniques Systems development approaches that include some form of iterative cycle, using a prototype or simulation to help the definition of requirements and design features, have much to offer Internet systems development. These systems development approaches emphasize the rapid development of loosely independent systems that are small in scope and size. However, they are not used for defining strategy and the implementation of that strategy in a Web site, nor are they designed for dealing with the complexities of Internet systems development. Although the methodologies used in systems development were never designed to deal with the development of Internet systems, they can serve as a frame of reference for tackling reasonably large projects in systems development. One of their main contributions is that they provide a strong project management framework for developing applications.
How the Internet Works The Internet is a conglomeration of networked computers, but it is not maintained by any one organizing body. The physical structure of the Internet can be thought of as a hierarchy. Small organizational networks connect to larger organizational networks, which have a connection to the Internet. The national telecommunications carriers maintain the local and national telecommunications infrastructure, which may include fiber optic cable and the use of satellites.
16
Internet Commerce Development
Design Characteristics The evolution of the Internet has been underpinned by certain design principles. Although, as previously mentioned, there is no one overarching standards body for the Internet, the design principles have been driven by a general user ethos that has been supported to a greater and a lesser extent by commercial software companies. Characteristics of the Internet can be described as follows. Interoperability and Open Standards The individual systems that make up the Internet need to be able to work together. Although common and compatible protocols are used on the Internet, the idea behind the interoperability feature is that different computers and software from different vendors will work on the Internet. Therefore, not everyone has to be running the same software package and the same version of the package to operate effectively on the Internet. Layered Protocols Internet protocols have been designed to work in layers. The higher level layers rely on the facilities provided by the lower level layers. For example, TCP (mentioned later) builds on the Internet Protocol (IP) layer to create reliable byte streams, and application protocols used for the Web or electronic mail build on TCP (Figure 1.7). Unique Addresses The IP addressing system provides a unique method of addressing each computer. It is composed of a 32-bit address. The addresses are written in four
Application layer (e.g., HTTP)
Transport layer (TCP)
Network layer (IP)
Physical layer (e.g., Ethernet)
Figure 1.7 Layered Internet protocols.
Growth of the Internet and the Need for New Development Approaches
17
numbers separated by dots such as 207.21.9.7 and are known as IP numbers. IP numbers are difficult for people to remember so a domain name is assigned. The domain name, again unique, is the equivalent of the number. An example of a domain name is cowan.edu.au. This name is translated to the IP number. End-to-End Protocols The Internet relies on the systems at the beginning and end of the communication network to be responsible for managing the transfer of data correctly rather than relying on the network itself. This means that the internal structure of the network is unimportant. Unregulated Content The Web to a large extent is not regulated in terms of content by any single governing body. National and state laws may regulate Internet content, but as yet no international body exists to define and oversee any legislation. Internet Technology Packet-Switching Technology The Internet uses packet-switching technology to transfer data across the network. This method is also used on local area networks (LANs) and wide area networks (WANs). The outgoing message is divided into small packets by the network software and then each packet is transmitted over the network. The incoming data is then reassembled. Each packet of data is labeled with a header. The header contains the network address of the sending computer and the network address of the receiving computer. Because many machines use the network, packet switching (a process of taking turns while sending and receiving) is used. In this type of network, users do not have dedicated lines on the network, but instead share the network resource, thus making it more economical. Routers The independent networks that make up the Internet are connected using routers. Routers are computers that have a processor, memory, and network interfaces. However, their only task is to connect networks and forward packets of data from one network to another. Organizations can connect to the Internet using a router or using a modem to dial up a computer that is connected to the Internet.
18
Internet Commerce Development
TCP/IP The different types of networks that are connected to the Internet must share a common protocol to communicate. The Internet predominantly uses a protocol called TCP/IP (Transmission Control Protocol/Internet Protocol). The TCP part is responsible for breaking the data up into small packets of data plus the sending and receiving addresses. The receiving computer extracts the data and puts it in the correct order. If some of the data is missing, the sending computer is asked to retransmit the data. When all of the data has been received, it is passed to the application program. Of course, errors do occur in the transmission of data. Packets of data get lost, and characters can be changed by glitches on telephone lines. TCP uses a checksum to detect these types of errors. The IP part of TCP/IP is related to the addressing system and was described earlier. Other Transmission Protocols The User Datagram Protocol (UDP) is simpler than TCP because it is not concerned with missing packets or keeping data in the right order. It is used mainly for sending short messages. ISDN ISDN stands for Integrated Services Digital Network. The trend is toward replacing the analog telephone network with a digital transmission system. ISDN provides a high-speed medium for transmission of voice, video, and data. It will have the added benefit for Internet users of not requiring a modem to access the telephone system even though the same basic twisted-pair cabling will be used. Browsers The World Wide Web can be accessed by software applications known as browsers such as Netscape Communicator or Microsoft Internet Explorer. The browser allows the user to input a URL (Uniform Resource Locator). A connection is made to the remote computer using that URL, and the HTML code is returned to the client and formatted as a page using the HTML within the browser. Browsers make temporary copies of the page in an area of memory called the cache. These pages are used when the user clicks the Back button, which saves time because the computer does not have to access the pages from the Internet again. Web browsers are becoming more sophisticated in terms of the operations they support. Some typical facilities supported by Web browsers are listed:
Growth of the Internet and the Need for New Development Approaches
19
• Retrieving Web pages; • Navigating through Web pages; • Searching facilities based on key words; • Accessing Web pages by inputting the URL; • Retrieving previously viewed Web pages; • Saving Web pages; • Printing Web pages; • Using e-mail; • Constructing Web pages.
Search Engines The browser itself does not do the searching on the Internet; it utilizes search engines. Search engines are Internet sites that collect and order information from the Internet. Examples of search engines include AltaVista, Yahoo, and Excite. Different search engines work on different principles and will frequently retrieve different results. However, most tend to list key words and headings on the screen with the information’s location. Hypertext and Hyperlinks Web pages can be linked using hyperlinks. The hyperlinks create a method of navigating through the Web. The hyperlink can be a word or words, or a picture or area within a page. Words that are hyperlinks are typically highlighted in some way and once clicked take the user to another page. Hypertext Markup Language (HTML) is a language for developing hypertext documents that can be viewed in a browser. The transmission of documents on the Web is handled by the Hypertext Transfer Protocol, as discussed next. Hypertext Transfer Protocol The Hypertext Transfer Protocol (HTTP) is the Web communications protocol. It handles the transfer of data over the Internet. When a client opens a connection to a Web server, an HTTP header is sent that contains, for example, a command to get or put data. The server transmits a message back to the client that includes the format of the data being returned. This allows the browser to display different types of data such as text, images, and HTML. Web Sites Web sites are computers on the Internet that host a number of pages of information that can be accessed by others. Universities, for example, typically have
20
Internet Commerce Development
Web sites that run into thousands of pages. For example, check out Edith Cowan University’s Web site at www.cowan.edu.au. Of course, the organization and management of such large sites is complex and time consuming. Web Addresses Web sites must have a unique address to avoid clashes and ambiguity for those accessing the data. The address is composed of several pieces of information but altogether is known as the URL (discussed earlier). The URL protocol is composed of the protocol, the server, and the path of the file or Web page. For example, in the following address: http://www.yellowpages.com.au/file
“http” stands for the Hypertext Transfer Protocol and “www.yellowpages.com.au” is the server address, which also includes the type of organization. In this case “com” stands for commercial, and the country where it is located, in this example “au,” denotes Australia. The entry at the end, “file” is the name of the file or Web page resource. Here are some examples of Internet address codes: • .com • .edu • .gov • .net • .uk • .nz • .jp • .ca
commercial institutions; educational institutions; government organizations; networks; United Kingdom; New Zealand; Japan; Canada.
Internet Operations In addition to the Web, the Internet can be used for three other primary operations: File Transfer Protocol (ftp), electronic mail, and telnet sessions. File Transfer Protocol The File Transfer Protocol or as it is more commonly referred to, ftp, is a utility for copying files from one computer system to another over a network. As long as both systems use the ftp protocol, the types of computer and operating systems are irrelevant. Often an account on the remote machine is required in
Growth of the Internet and the Need for New Development Approaches
21
order to access files; however, some remote machines are set up to accept anonymous logins. These latter systems allow users to access the files without obtaining an account. The ftp utility can be used by the ftp command in the UNIX operating system and requires the IP address or domain name of the remote computer. Once a login name and password have been provided, a number of separate commands are available that can be used to transfer files from one system to another. Files can be transferred in ASCII or binary format, and multiple files can be copied at one time. Of course, a variety of packages with graphical interfaces have been developed to make the ftp utility easier to use for casual users. Electronic Mail A large number of electronic mail packages are available for sending messages over the Internet. It is not the purpose here to explore individual packages but rather to describe their common features. It is worth considering how electronic mail compares with other forms of communication (Table 1.3).
Speed In evaluating speed it is important to consider the time it takes to transmit/deliver the communication and the delay time before it is read. In fact the communication process could be broken down into compose, transmit, receive, and read. For example, a letter takes time to write, is posted, received, and then Table 1.3 Comparisons of Methods of Communication Feature
Telephone
Mail
Fax
Face to Face
E-Mail
Speed
High
Low
High
Slow
Moderate–High
Cost
Moderate
Low–Moderate
Low
High
Low
Synchronized
Yes
No
No
Yes
No
Accountability
Low
High
High
Moderate
Moderate
Conferencing
Small groups
One way
No
All groups
All groups
Security
Moderate
Moderate
Low
Moderate
Moderate
Richness
Moderate–High Low
Low
High
Low
Ease of duplication
Low
Moderate
Moderate
Low
High
Formality
Moderate
High
Low
High
Low–Moderate
22
Internet Commerce Development
read. There could be a considerable delay before the letter is read even though the letter was efficiently delivered. In terms of speed, telephone and fax are quick to send, although there may be several aborted attempts with the telephone to actually speak to the intended person. Face-to-face communication has the added problem of getting two or more people together at the same time, which is often time consuming and expensive. Mail, sometimes referred to as “snail mail,” is slow but reasonably inexpensive. E-mail is fast to transmit but may involve some delay before it is read, especially if the recipient is away or does not regularly check his or her e-mail. The more frequently people check their e-mail, the more effective it is as a form of communication. In some cases it can be more effective than the telephone because the message can be read, reread, and thought about before a response is made. One of the main problems with telephone communication is that the people involved must be synchronized, in other words, both people must be on the telephone at the same time. This is unlike e-mail and traditional mail, which are asynchronous because the recipient does not need to be present when the communication is sent or delivered. This is especially useful when large distances and different time zones are involved.
Accountability and Formality Accountability may be an important issue in communications, especially in business where the expectation is usually one of formality and accountability, although there are occasions when people are more casual. Hence, formality and accountability are closely related. Due to the fact that written (typed) letters have been the accepted form of business communication for many years, other forms of communication may appear less formal and as a result hold the senders and recipients less accountable as a consequence. Some people may prefer face-to-face contact with a formal handshake as part of a business deal, but it might be legally difficult to prove. Although e-mail may appear to be a very informal form of communication, it could be used as defamation evidence in a court of law. Therefore people must not underestimate the accountability associated with the content of e-mail. Interestingly, it is possible to conceal the sender’s identity with e-mail by specifying a different return address, which reduces the accountability of e-mail somewhat.
Conferencing Sometimes group communication is needed. The telephone is effective for group conferencing but only for small groups. Fax and mail are poor for conferencing, and face-to-face conferencing is expensive. E-mail is fast and effective
Growth of the Internet and the Need for New Development Approaches
23
when dealing with groups of people because the same message can be easily posted to a large group.
Security Security, like accountability, is an important issue in business. There are many occasions when the communication is private and confidential in nature. Letters can be lost in the mail or opened by others and for this reason would have to qualify as being poor in terms of security. Telephone conversations can be overheard or tapped but on the whole are moderately secure. Again, face-to-face communication has a number of security problems, but is moderately secure as long as basic precautions are taken and people are trustworthy. The problem with faxes is that they are frequently left by the fax machine for a multitude of people to read. E-mail is relatively secure and private as long as people adhere to basic security measures. These include using a good password system and not leaving the machine with the e-mail package opened and unattended. Telnet Telnet is a utility for accessing and logging into other computers on the Internet and working on the remote machine. It is used to access an account and software on a remote machine and for many public databases and library systems. Using telnet involves accessing a remote machine, and using the CPU of that machine, while returning the output on your local monitor. For example, you may wish to access a machine on which you have an account to use the Geographical Information System software. You could use telnet to access that machine, log in with your user ID and password, and then run the software and redirect the display to your own machine rather than the monitor of the remote machine.
Accessing the Internet Large organizations typically connect to a regional network to which the organization pays a fee to access the Internet. For example, in Australia, universities pay a fee to an organization that provides them with access to the Internet at economical rates. Other organizations and individuals can access the Internet via a connection to an Internet service provider. ISPs specialize in providing access to the Internet and Web-related services. The ISP provides routing of IP packets, the Domain Name Service (DNS), and electronic mail. The communication services may be available by
24
Internet Commerce Development
dialing up, via ISDN, or via a dedicated data service, and they are available in different bandwidths. Internet Service Providers A number of factors should be considered when selecting an Internet service provider. Much depends on the person’s requirements. Currently, there are many from which to choose. The main factors to consider when selecting an ISP are listed next: • Cost. ISPs usually provide a variety of options to subscribers. For
•
• •
•
•
instance, some charge according to the time spent on the Internet, others for the volume of data downloaded, and yet others may just have a flat fee. You should determine the option that best suits your requirements. Domain name. An ISP that can provide an effective domain name (if hosting your Web site) for your business or organization is desirable. For example, a domain name for a business called XYZ would be easier to remember if its domain name was XYZ.com.au. Closeness to Internet backbone. The bandwidth that connects the ISP to the Internet backbone is a factor in speed of transmission of your data. Reliability. The reliability of an ISP’s service is important. Consider whether they have much downtime, how quickly they respond to problems, accuracy of billing, and so on. Hosting services. Many ISPs provide Web site hosting facilities. This type of hosting has the advantage of being convenient for organizations because the ISP is responsible for running and maintaining the hardware and software. The main disadvantage with this type of service is the loss of some control over aspects of the Web site, such as when and how often updates can be made. Other services. The ISP may provide transaction services with payment systems. These may or may not be relevant to the customer.
In a survey conducted in 1998 (http://www.nua.ie/surveys) the most important aspects in choosing and assessing ISPs were as follows, in this order: connection availability, network performance, network capacity, speed of diagnosis and repair, price, service level agreements and guarantees, reputation for technical support, range of bandwidth options, ISP staying power in the market, and anticipated ease of setup and start-up.
Growth of the Internet and the Need for New Development Approaches
25
Commerce Service Providers Beyond Web site hosting, ISPs can also provide transaction services by having the necessary infrastructure for order capture, payment, and fulfillment. Some important considerations for transaction service providers follow: • What kinds of payment systems are provided? • What is the cost structure? Are costs assessed according to transaction
volume, transaction value, or just a flat rate? • What reporting features are there? • How and when are funds transferred? • Can the transaction interface be customized?
Summary The growth in the number of people who have access to the Internet has created huge potential for businesses to market directly to consumers. The technology related to the Internet is also developing rapidly. However, development methods have not evolved at the same rate and are often inappropriate for designing Internet commerce applications. The following chapter covers traditional methods of systems development, and from Chapter 3 on the Internet Commerce Development Methodology is presented and explained.
References [1]
McKeown, P. G., and R. Watson, Metamorphosis: A Guide to the World Wide Web and Electronic Commerce, New York: John Wiley & Sons, 1997.
[2]
Rockwell, B., Using the Internet to Compete in a Global Marketplace, New York: John Wiley & Sons, 1998.
[3]
Treese, G. W., and L. C. Stewart, Designing Systems for Internet Commerce, Reading, MA: Addison-Wesley, 1998.
[4]
Gordon, S. R., and J. R. Gordon, Information Systems: A Management Approach, Fort Worth, TX: Dryden Press, 1996.
[5]
Whitten, J. L., L. D. Bentley, and W. M. Barlow, Systems Analysis and Design Methods, Homewood, IL: Richard D. Irwin, 1994.
[6]
Hawryszkiewycz, I., An Introduction to Systems Analysis and Design, Upper Saddle River, NJ: Prentice Hall, 1998.
This page intentionally blank
2 Introduction to Systems Development Introduction Systems development is the term used to describe the process of analyzing, designing, and building an information system. This chapter explains the systems development life cycle, which acts as a framework for development for the systems analyst. The two key modeling techniques of process and data modeling are described and an overview of alternative systems development methodologies is presented.
The Systems Development Context An information system in a business context is made up of a number of components. These usually include people, hardware, software, policies, procedures, data, and information. The components of the information system are closely interwoven with the fabric of the organization. They often form complex systems that operate in complex environments. Although systems development methods and techniques try to model this complexity, we must not forget that they are a simplified version of reality. Systems development methods are abstraction techniques that aim to simplify this complexity. These methods are used by information systems (IS) professionals to model the “data” and the “processes” in organizations. The development process used in building an information system involves following a series of steps. Although information systems could be developed in an ad hoc manner, a more formal process, or methodology, is usually used in organizations. 27
28
Internet Commerce Development
The Systems Development Life Cycle The systems development life cycle (SDLC) is a structured framework for developing information systems. It breaks down the development process into various phases and provides a project management context within which to work. The main phases are analysis, design, implementation, and maintenance (Figure 2.1). Analysis The analysis phase concentrates on gathering information about the current and proposed systems. The feasibility of making changes is continually assessed. The requirements of the new systems are gathered. This phase uses modeling techniques to describe the processes and the data within the organization. Design The proposed system is now designed in detail. This involves specifying the design of the database, the network infrastructure, the policies and procedures, and the software, which includes the user interface. Implementation The system must be constructed and put into place. The software has to be written or set up if it is an off-the-shelf package. A large amount of testing and training of the users take place before the system is finally handed over to the users. Maintenance Most systems undergo changes as time progresses. These may be the result of changing requirements or errors being detected in the system. Resources must be set aside each year for maintaining a system.
Analysis
Design
Figure 2.1 The systems development process.
Implementation
Maintenance
Introduction to Systems Development
29
The four commonly used phases can be decomposed into further stages (Figure 2.2). Information systems development textbooks may have different names for some of the stages or even combine or further decompose stages, but the seven stages in Figure 2.2 form a logical breakdown of the life cycle. The life cycle can be amended for alternative systems development approaches such as prototyping (discussed later). The structured life cycle approach evolved as a reaction to the problems of developing information systems in an ad hoc way. The dangers of developing an information system without a life cycle framework are listed in Table 2.1. Project request Users
Feasibility report Feasibility study
Analysis phase
Problem statement Requirements report Alternative solutions
Requirements phase
Solution recommendation Design specifications Design system
Implementation
Implemented system Maintain system
Update requests
Figure 2.2 Systems development life cycle.
30
Internet Commerce Development
Table 2.1 Problems Associated With an Ad Hoc Approach to Systems Development The completed system is not what the users want. There is much conflict in the development of the system. Resources are wasted. People may have to work harder than needed. The system does not produce the right information. The system is not finished on time. The developers get a bad reputation.
Skills Required by Systems Analysts To effectively develop information systems, the systems analyst requires a wide range of skills. Many of these are general skills that will develop throughout the analyst’s career. Communication and Interpersonal Skills The systems analyst requires effective writing skills because he or she will have to write many reports, memos, e-mails, and letters throughout the systems development process. Well-structured and well-presented reports are important tools for communicating with the potential users and senior managers. Oral presentations are also important in helping to guide the team in the development of the system, to report to managers on progress, and to make requests for resources. At times analysts will need to be enthusiastic about “selling” the system to users and managers. The ability to relate to people, to form working relationships, and to effectively negotiate are useful skills that the analyst should develop. Analytical and Problem-Solving Skills Many problems arise when dealing with computerized information systems. The analyst must be skilled in analyzing and solving problems, which should be seen instead as challenges and opportunities for improving the system. Arriving at solutions to problems may require creative thinking; this is an especially useful skill in the systems design phase where multimedia interfaces can provide a competitive edge.
Introduction to Systems Development
31
Technical Skills Systems development requires an understanding of the technical issues related to technology if you are going to make sound recommendations concerning system design details. Programming is usually a very involved and intricate task that demands a “technical” aptitude. Project management skills involve managing resources and people as well as the management of time. It is a fundamental skill that the analyst must be conscious of and make every effort to develop.
Tasks Involved in Each Stage of Systems Development IS Planning IS planning has become an important issue for many managers. Due to the rapid changes in information technology, organizations are seeking to harness technology to help drive the business rather than the business being driven by information technology. IS plans are seen as a method of strategically positioning the organization in terms of its use and development of information technology. The plan includes broad directions for the technology platform, the network infrastructure, the software architecture, and the key data and processes of the business, and it identifies the IS/IT expertise and skills required by the organization. Future project requests can be assessed from the perspective of whether they fall in line with the IS plan. This can reduce the danger of becoming sidetracked by projects that are not aligned with the organizational strategy and goals. Feasibility Phase A project is initiated as a result of a user request, a management initiative, or the analyst’s suggestion. The feasibility phase often involves gathering information on and understanding the current system if there is one. Problems are identified and the benefits of solving them are assessed. If no current system exists, then research may be carried out on similar systems in other organizations. It is a preliminary investigation that tries to identify the scope of the project and determine the project’s validity. On occasion, potential broad solutions are suggested and estimates of costs and benefits are made. Of course, at this stage, costs and benefits are difficult to identify and quantify. This is often left to subsequent stages when more detailed information is known. The outcome of the stage is a feasibility report on the project that would typically be presented to management. A decision must then be made whether to move on to the next stage of the life cycle, to cancel the project altogether, or to shelve the project for the time being until conditions become more favorable.
32
Internet Commerce Development
Analysis Phase A systems development project usually involves an examination of the current operations and systems. For example, in assessing the development of a new order processing system, the existing system should be analyzed to gain an understanding of the strengths and weaknesses of that system. The problems associated with any information system fall into broad categories (Table 2.2). The costs associated with the problems can then be estimated. This information can be used to justify the expense of the new development. If the proposed system is completely new, then this phase can be used to research systems in other organizations. In analyzing the current system the analysts conduct a detailed investigation that employs various information gathering techniques such as interviews, observation, and questionnaires (see later section on information gathering). The analysis study phase typically requires considerable end-user involvement. Data flow diagrams are commonly drawn to document the existing system and form part of the documentation for the stage along with an analysis study phase report, which identifies the key problems and associated costs. Requirements Phase After studying the current system, the analysts must attempt to define the requirements for the proposed system. Again this phase requires much end-user involvement and employs a range of information gathering techniques. This phase of the systems development life cycle is a logical one. The emphasis is on defining what is required in terms of the information needed rather than on how the system should be physically implemented.
Table 2.2 Common Problems Found in Information Systems Symptom of Problem
General Problem
Managers find it difficult to make decisions
Lack of information
Customers complain about invoices
Inaccurate data
Reports are not used
Inappropriate level of information
Reports arrive after date required
Too slow in producing information
Many errors being corrected in database
Expensive information
Introduction to Systems Development
33
The requirements of the proposed system can be documented using process models (data flow diagrams) and data models (entity relationship diagrams). A computer-aided systems engineering (CASE) tool can be used to develop and store the documentation of the system. A presentation can be made to user management at the end of this stage to communicate the essential requirements of the proposed system. Alternative Solutions Phase The alternative solutions phase involves identifying possible implementation solutions for the requirements. Ideally, several options are proposed rather than one. The analyst presents these to management so they can make a decision regarding which alternative to choose. Alternative options can include a fully automated system, a partially automated system, or the use of an alternative technology. The option of keeping the system as it is should be included as a way of comparing the proposals. The technical details of each alternative system are specified and the costs estimated. Much depends on the resources and the type of system being developed as to the level of detail for each specification. Time constraints do not usually allow the developers to specify all candidate solutions in absolute detail. Design Phase Systems design is a physical stage of the systems development life cycle because it concentrates on how the proposed system will be designed. All aspects of the proposed systems have to be designed (Table 2.3). Hardware and Software Acquisition Hardware and software may have to be acquired for the proposed system. If there is to be a substantial investment in technology, then considerable effort must be put into this task. If the company is sure about the hardware and software they require, then they can approach various vendors and ask for quotes for the products. Warranty agreements, price of products, quality of equipment, and reputation of the company are all factors to be considered when choosing a supplier. Other factors such as whether the company is a local company that will pick up equipment under warranty to repair it can be important because greater delays may be experienced if the supplier is not local. If the company has not decided on particular hardware and software, they will require vendors to make recommendations with justifications in this area. The requirements of the organization should be outlined for the vendors who
34
Internet Commerce Development
Table 2.3 Activities of the Systems Design Phase Activities of Systems Design
Description of Tasks
Software and hardware acquisition
Sourcing and buying hardware and software Evaluating vendor recommendations
Database and file design
Setting up the database Fine-tuning the performance of the database
Network design
Design the data communications infrastructure
Input design
Design of forms and input screens
Output design
Design of reports and output screens
Interface design
Design of the user interface (usually graphical user interface)
Software or program design
Designing the software for modularity and reusability
Design of methods procedures and controls
When events should happen and specifying the conditions under which they operate
should respond with their suggestions. The vendors’ proposals can be ranked using a scoring system that allocates points on a scale of 1 to 10, for example, for each feature of the recommendations. Implementation Implementation is the phase in the systems development life cycle when the system is built and tested and then handed over. Of all the phases, this usually takes the most amount of time. In fact, a lot has to happen during implementation, including these major tasks: • Rooms and buildings altered; • Programs coded; • Programs tested; • Hardware installed; • Systems software set up; • Applications software installed; • Network installed;
Introduction to Systems Development
35
• Database set up; • Data keyed into database; • Further testing; • Security measures put in place; • Security measures tested; • Training of staff; • Documentation updated; • System handover; • Reviews of the system.
The most important aspect of systems implementation is project management, which is the scheduling of events and the organizing of people to achieve set goals. Many projects run over time or over budget because of poor project management. Reasons why projects might run over time include these: 1. Overoptimistic estimates of task duration. This often happens as a result of trying to win contracts or being too eager to please project sponsors. 2. Poor project management skills. If the project leaders fail to comprehend all of the tasks involved and the capabilities of the team, delays can result. 3. Poorly motivated project team. The team may be lacking incentives to complete the project on time. 4. Poorly motivated clients. Client staff can drag their heels and put up obstacles if they are resisting change. 5. Inadequate skills of project team. The team members may not be the right people for the job or they may not have had sufficient training. 6. Lack of corrective action. People are unwilling to be accountable and take responsibility for corrective action. Systems conversion is a stage in the project when processing changes over from one system to another. Conversion can be carried out in several ways: 1. Direct conversion. On a set date, dispense with the old system and start with the new system. 2. Parallel conversion. Run both systems for a time.
36
Internet Commerce Development
3. Pilot conversion. The system is tested in one location before other locations are converted. 4. Phased conversion. Subsystems are implemented one at a time. 5. Evolutionary conversion. This takes the perspective that a system evolves in small increments rather than radical changes from old to new. Maintenance Maintenance projects can be divided into two categories. The first category is related to correcting errors in the system. The errors may have been detected during the systems development process but were left to a later date for correction. More likely, the errors will be detected when the system has been running for some time. The problems are logged and attended to in batches if they are deemed not to be critical. If they are critical to system operation, they must be attended to as soon as possible. Changes will need to be made to the system at various times due to changing requirements. These changes may come about because of new regulations, changed preferences, or new techniques that can improve the performance of the system. A change to a system can be a significant project in its own right and may require following the systems development life cycle, albeit a shortened one.
Information Gathering Fact finding or information gathering is undertaken at various stages throughout the SDLC. It is particularly important when defining the problems and the requirements. Researching design options and the technology also require information gathering techniques. The nine common fact-finding techniques follow: 1. 2. 3. 4. 5. 6. 7.
Analyzing company documentation; Analyzing forms, files, and database records; Visits to other organizations; Research topics in magazines and journals; Observation of the systems in action; Questionnaires; Interviews;
Introduction to Systems Development
37
8. Informal conversations with users; 9. Joint application design. The systems analyst must be skilled in gathering information. Table 2.4 lists some of the strengths and weaknesses of each method. There is much that can be determined by accessing the various types of data and information within the organization. Analyzing company reports and brochures can provide valuable background information about the current system. Observing organizational processes in action is a useful technique to find out the glitches in a system, but the analyst should be aware that people often modify their behavior when they are being watched. Questionnaires are used in many areas Table 2.4 Strengths and Weaknesses of Information Gathering Techniques
Phase Used
Strength of the Method
Weakness of the Method
Observation
Analysis Requirements
Can find out firsthand how things work
May give a distorted view of events and work
Questionnaires
Feasibility Analysis Requirements
Can involve a large number of people in a cost-effective manner
Not easy to construct, or few may reply, or difficult to get detail
Interviews
Feasibility Analysis Requirements
Can get detailed answers
Time consuming and sometimes difficult to arrange
Analyzing company documentation
Feasibility Analysis
Gives good background information
May be out of date
Analyzing forms, files, and database records
Feasibility Analysis
Good for detailed information
May be out of date
Visits to other organizations
Requirements
Learn from others’ mistakes
May not be possible to gain access to other organizations
Informal conversations
Analysis
Good for finding out problems
Can give a distorted view
Joint application design
Requirements
Shortens the time to define requirements
May not be possible to get key people for enough time
Research
Design
Valuable sources of May not be easy to find information from experts
May not reflect reality
38
Internet Commerce Development
of business, but considerable thought must be used in the design of the questions; otherwise the information can be worthless or too difficult to collate and interpret. The same hazard applies to conducting interviews. The right people must be interviewed and they should be asked the right type of question or they may feel that their time is being wasted. Joint application design (JAD) takes the form of intensive workshops with key personnel and a skilled facilitator. The aim is to define the essential requirements of the new system. JAD can reduce the time required for defining the requirements and be very effective if the workshops are properly organized and structured.
Process Modeling Data flow diagrams model system processes and are used frequently by systems analysts. They can be used to model the existing system and to model the proposed system. Reports as a form of communication have been partially replaced by diagrams in systems development for a number of reasons: Diagrams are less ambiguous, diagrams show relationships better, and diagrams summarize material. Data flow diagrams can either show the physical details of implementation or be logical diagrams without the physical details. They can be used (Figure 2.3) during these phases: • In the problem definition phase during analysis (physical data flow • • • •
diagrams); To view the current system logically (logical data flow diagrams); In the requirements definition phase (logical data flow diagrams); To describe alternative solutions (semiphysical data flow diagrams); In the design stage (physical data flow diagrams).
Logical data flow diagrams are implementation-independent models. They remove biases that stem from the way the existing system is implemented or the way that one person thinks that the system should be implemented. Implementation-independent models reduce the risk of missing functional requirements because of a preoccupation with technical details. They allow the analyst to communicate with the user in a nontechnical way when gathering requirements. Four symbols used in data flow diagrams are shown in Figure 2.4.
Introduction to Systems Development
Analysis phase
39
Physical logical (if required)
Requirements phase
Systems design
Logical
Physical
Alternative solutions Semi-physical
Figure 2.3 Physical and logical stages of systems development.
Hierarchy of Data Flow Diagrams Data flow diagrams (DFDs) are developed in increasing levels of detail for a system. Context Diagram The context diagram has one process and delineates the system boundaries (Figure 2.5). The process describes the system that is being examined. It could be the company or a subsystem or department within the company; it all depends on the scope of the system being examined. The external entities or agents could even be departments or subsystems within the same organization if the system being examined is a subsystem. No data stores are shown. Every data flow is named. Subsystem Diagram The context diagram does not show much detail. If the process from the context diagram is broken down further, subsystems can be shown. The subsystem
40
Internet Commerce Development
Data flow name (a)
Process name
(b) Entity name (c) Data store name (d) Figure 2.4 Data flow diagrams. (a) The data flow symbol shows the flow of data; (b) the process symbol shows the processing of data; (c) the entity shows data coming into and going from the system; and (d) the data store is a symbol to show the storage of data.
Application
Promotion information
New member
Member Application response
Fairdinkum Wine Club
Stores and distribution
Dispatch details
Figure 2.5 Context diagram.
Invalid order Order
Purchase order
Suppliers
Introduction to Systems Development
41
diagram is sometimes referred to as the systems diagram or the overview diagram. This diagram shows the data flows between subsystems and may even include shared data stores. You can see that this diagram shows more information than the context diagram (Figure 2.6). Detailed Data Flow Diagrams The subsystem diagram can be decomposed further into middle level diagrams and then primitive level diagrams. The middle level diagrams are not always necessary; it just depends on the size and detail of the systems under study. Primitive level diagrams show processes that are detailed and show the processing of a self-contained task for the system (Figures 2.7 and 2.8). Decomposition Diagram It is not recommended that you start by drawing one large data flow diagram. It is better to start with a decomposition diagram (Figure 2.9). This diagram starts with a box that includes the name of the system. The next level shows the major
Invalid order Application
Order details
New applicant
Member Application Memberships
Order Member details
Application response
Order processing
Member details
Dispatch note
Member orders Promotions information
Promotions Stores
Purchase orders Accounts
Purchase orders Supplier
Member Invoice Figure 2.6 Subsystems diagram.
Purchase order
42
Internet Commerce Development Request prepayment
Order
Member
Incorrect order
Check order details
Orders awaiting payment
Checked order
Check credit
Order without credit
Request prepayment
Stock
Check stock
Pending order details
Release order pending
Backorder details Member orders
Member
Process order Backorders
Create backorder
Backorder notification
Figure 2.7 Order processing diagram.
subsystems. The final level shows the processes that are part of each subsystem unless there are middle level diagrams. The decomposition diagram acts as a guide for developing the set of DFDs. Data Dictionary Entries Processes need to be documented because many involve a number of steps. These will not be obvious from the DFD. Many of these processes will form the software component of the new system and hence need to be specified in detail so that the programmers can accurately implement them. The processes that
Introduction to Systems Development
43
Application New applicant
Applications
Store application details
Incomplete application Assign credit level
Rejection
Acceptance
Credit level
Process application
Accounts
Figure 2.8 New members diagram.
Fairdinkum Wine Club
Accounts
Memberships
Store application details
Check credit details
Purchasing system
Promotions
Process application
Check credit
Stores
Order processing
Assign credit level
Check stock
Process order
Request prepayment
Release order pending
Figure 2.9 Decomposition diagram for part of the wine club ordering system.
Create backorder
44
Internet Commerce Development
are not implemented in the software are manual procedures that still need to be recorded. While the processes could be explained by a process description in text format, that description might be ambiguous to another reader. Structured English and decision tables are two ways of unambiguously presenting the steps involved in any process. Decision Tables A decision table is a method of describing process logic (Figure 2.10 and Table 2.5). The stages in developing a decision table are as follows: 1. 2. 3. 4.
Identify the conditions. Identify the rules and their values. Specify the actions. Complete the bottom right corner of the decision table by identifying the actions that result from the combination of conditions.
Decision tables can be simplified. When one condition has every option covered and all the other conditions are the same, resulting in the same action, then the rules can be collapsed into one. Structured English Process logic can also be defined using structured English. The decision tables are used for defining business policies and structured English can be used to define business procedures. The two are complementary techniques (Figure 2.11). Structured English uses a restricted set of terms and file and attribute names to describe the high-level logic. There is no set vocabulary for structured English, but its style must be brief and to the point. It relies on the use of repetitions, conditions, and sequence statements.
Conditions
Condition values
Actions
Action values
Figure 2.10 The structure of a decision table.
Introduction to Systems Development
45
Table 2.5 Decision Table Conditions
Rules
Credit rating
A
B
C
A
B
C
A
B
C
A
B
C
Over 25?
Y
Y
Y
N
N
N
Y
Y
Y
N
N
N
Employed over 2 years?
N
N
N
N
N
N
Y
Y
Y
Y
Y
Y
X
X
X
X
Actions No credit
X
Credit level 1 Credit level 2
X
X
X
X
X X
X
Data Modeling Data modeling is a method of organizing and documenting a system’s data. The models produced are considered to be logical models because they are implementation independent. Modeling is done in the early stages of the database design phase. Although the data is always changing in a business, the types
For each Credit Application CASE 1 (Credit Rating A) then If Age < 25 and Employed < 2 years Then Assign Credit level 1 Else Assign Credit level 2 End If CASE 2 (Credit Rating B) then Assign Credit level 1 CASE 3 (Credit Rating C) then If Age < 25 and Employed < 2 years Then Assign No Credit Else Assign Credit level 1 End If End Case Figure 2.11 Example of structured English.
46
Internet Commerce Development
of data collected are fairly stable. Data is usually more stable than processes, and hence some methods put the emphasis on data modeling. One methodology that does this is James Martin’s Information Engineering [1]. Entity Relationship Diagrams The entity relationship diagram (ERD) is a data modeling technique that shows the data and the relationships between the data within a business (Figure 2.12).
Member 1:1 0:M 1:1 0:M
Order
Backorder
1:1
1:M
0:M
1:1 1:M Order item
Backorder item
0:M
1:1
Product 1:1 1:1 0:M Purchase item 1:M 1:1 Purchase order 0:M 1:1 Supplier
Figure 2.12 Entity relationship diagram.
Introduction to Systems Development
47
It is not a technique to show how data is implemented, created, modified, or deleted. A data entity is anything, real or abstract, about which we want to store data. A rectangle is used to denote a data entity (Figure 2.13). Each entity has a list of attributes that describe it, with one or several of them acting as the key or unique identifier. The following is a list of example entities: Applicant
Borrower
Contractor
Client
Creditor
Customer
Book
Course
Machine
Project
Purchase Order
Quote
Building
Campus
State
A data relationship is shown by a line between the entities. The entity relationship diagram of Figure 2.14 shows products being ordered from suppliers. It can be read in the following ways: • A purchase order is filled by one and only one supplier. • A supplier fills zero or more orders. • A product is contained on zero or more purchase orders. • A purchase order contains at least one product.
Many-to-Many Relationships Many-to-many relationships in ERDs are considered undesirable (Figure 2.14). This problem creates difficulties in the database design and implementation
An entity
Student
Figure 2.13 An entity and its attributes.
Attributes Student_Number Student_Fname Student_Lname Address City Postcode Telephone
Key
48
Internet Commerce Development
1:M
0:M
Product
Purchase order
1:1
0:M
Supplier
Figure 2.14 An entity relationship diagram to show the ordering of products from suppliers.
stages. The purchase_order/product relationship has a many-to-many link. In this case, there are pieces of data for each ordered item, such as quantity ordered and price at the time of order. This can be resolved by creating another entity, which is shown in Figure 2.15. A purchase order has one or many ordered products. Zero or many ordered products relate to a product type. One product type can be ordered as zero (may not be an ordered product at this moment) or many ordered products. The following steps are used to develop an entity relationship diagram: 1. 2. 3. 4. 5. 6.
Identify entities from either interviews or forms and files. Define identifiers (keys) for each entity. Draw a rough draft of the ERD. Identify data attributes. Match attributes to entities. Attempt to resolve many-to-many relationships.
Data Analysis After the initial data modeling has been completed, each entity has to be analyzed to assess whether all of the attributes describe the one entity. The process is called data analysis or normalization. Normalization rules are designed to prevent update anomalies and data inconsistencies. We will deal with three
New entity
1:1
Product
0:M
Ordered product
Figure 2.15 Resolving many-to-many relationships.
1:M
1:1
Purchase order
Introduction to Systems Development
49
levels of normalization termed first, second, and third normal form. There are two further levels (fourth and fifth), but we will not be concerned with those because they deal with special cases of data that you are less likely to come across.
First Normal Form First normal form excludes variable repeating fields and groups. If you look at the data in Table 2.6 you can see a repeating component. This format would create much redundancy in a database because all of the order details would have to be repeated for every part or, if the cells were left blank, they would create ambiguity. The solution to this problem is to split the entity into two separate entities. The data in Table 2.7 is in first normal form. The objective of doing this first step is to reduce the many-to-many relationships to one-to-many relationships thereby alleviating update and redundancy problems. The creation of the new entity Order_Line reduces the many-to-many to a one-to-many relationship. The key combines the keys of the original table and the repeating group.
Second Normal Form Second normal form is violated when a nonkey field is a fact about a subset of a key. It is only relevant when the key is composite, that is, when it consists of several fields. The problem with the data in Table 2.8 is that Warehouse_Address is a fact about the warehouse alone and not the part. Warehouse_Address is repeated in every record that has a part in that warehouse. If the address of the warehouse changes, every record for that warehouse must be updated. Data
Table 2.6 Data in Unnormalized Form Order Ord-No
Date
Company
Part-No
Qty
0001
6/3/90
J Smith
P1
10
P2
30
P7
10
P2
10
P7
20
0002
6/4/90
XYZ
50
Internet Commerce Development
Table 2.7 Order Data in First Normal Form Order Order-No
Date
Company
0001
6/3/90
J. Smith
0002
6/4/90
XYZ
0003
6/4/90
A. Capp
Order-Line
Part-No
Qty
0001
P1
10
0001
P2
30
0001
P7
10
0002
P2
10
0002
P7
20
Order_Line
may become inconsistent because of the redundancy. At some time there may be no parts stored in the warehouse and, therefore, no record in which to keep the warehouse address. The record should be decomposed into two. The data in Table 2.9 is in second normal form.
Table 2.8 Part and Warehouse Data Part_Warehouse Part
Warehouse
Quantity
Warehouse_Address
P1
Alpha1
4,000
20 Singleton Road, Bunbury
P2
Beta2
250
10 Desert Road, Geraldton
P3
Alpha1
2,235
20 Singleton Road, Bunbury
P4
Alpha1
965
20 Singleton Road, Bunbury
Introduction to Systems Development
51
Table 2.9 Part and Warehouse Data in Second Normal Form Part_Warehouse Part
Warehouse
Quantity
P1
Alpha1
4,000
P2
Beta2
250
P3
Alpha1
2,235
P4
Alpha1
965
Warehouse Warehouse
Warehouse_Address
Alpha1
20 Singleton Road, Bunbury
Beta2
10 Desert Road, Geraldton
Third Normal Form Third normal form is violated when a nonkey field is a fact about another nonkey field. In Table 2.10, Department_Location is a fact about the department and not about Employee_No. The main problem with these data is the repetition of Department_Location. The redundancy of this data has the potential to lead to data inconsistency. The problem is resolved by breaking up the data into two entities (Table 2.11). Department is included in the Employee table and acts as a foreign key as it forms a link between the two tables. A foreign key is the Table 2.10 Employee Data Employee Employee No
Department
Department_Location
Date of Birth
1011
Accounting
Joondalup
01/23/59
1012
Information Systems
Churchlands
11/17/60
1017
Accounting
Joondalup
01/10/75
52
Internet Commerce Development
Table 2.11 Employee Data in Third Normal Form Employee Employee No
Department
Date of Birth
1011
Accounting
01/23/59
1012
Information Systems
11/17/60
1017
Accounting
01/10/75
Department Department
Department_Location
Accounting
Joondalup
Information Systems
Churchlands
Accounting
Joondalup
name given to a key from one entity that is repeated in another entity to form a link.
Systems Development Methodologies What Is a Methodology? A methodology can vary from a series of steps used in solving a problem to a general approach to solving a problem, or it can even be an approach that has philosophical foundations. Depending on the nature of the problem and the contextual environment, any one of them or even a combination may be appropriate to use in the systems development process. A definition of the term methodology is: A collection of philosophies, phases, procedures, rules, techniques, tools, documentation, management, and training for developers of information systems.
Generally, the components of an IS methodology would describe the following: • How a project is to be broken down into stages;
Introduction to Systems Development
53
• What tasks are to be carried out at each stage; • What outputs are to be produced; • When actions or events are to be carried out; • What constraints are to be applied; • What support tools are to be utilized.
A methodology is often used as a project management tool to create a better end product, a better development process, and a standardized process. The two main types of IS methodologies are structured methodologies and behavioral methodologies. The life cycle that has been discussed in this chapter is characteristic of traditional structured methodologies. Examples of these would include Information Engineering and Structured Systems Analysis and Design Methods (SSADM). Structured methodologies, although not really scientific, tend to draw on the credibility of the scientific method. Behavioral methodologies take an organizational perspective. The real complexity in an organizational setting comes about as a result of the interaction of the components of the system. The system encompasses such things as the people, technology, protocols, procedures, organizational culture and politics, and the wider business environment. The Soft Systems Methodology is perhaps the best known behavioral methodology used in information systems [2]. Examples of IS Methodologies Information Engineering Information Engineering [1, 3] is a methodology that takes a data-driven approach. This means that data models and data modeling are at the heart not just of any one system but the organization as a whole. The enterprise-wide approach to systems development is also the reason why it puts such an emphasis on systems planning. Process modeling is given some attention, but is not given the same priority as data modeling. The methodology is supported by a CASE tool called Information Engineering Workbench (IEW). Object-Oriented Methodology Although object-oriented development has much in common with the structured approaches described in this chapter, it differs in that it focuses on the notion of objects that encapsulate both data and methods (processes). This means that objects can be developed and then reused in other parts of the system without worrying greatly about their internal structure [4]. For example,
54
Internet Commerce Development
suppose there is an object that is a picture. It could be developed to include the method to display it on the screen so that if the object is reused in another part of the system it carries with it the code to display it. The object acts as a self-contained feature of the system. Traditional structured techniques were developed when data was mainly text based. Increasingly, systems have to store multimedia information and object-oriented methods are seen as more appropriate for handling these diverse forms of data [5]. Prototyping Prototypes have been used by engineers for many years. They generally develop a small-scale working (or simulated) model of a product. In systems development a prototype is used to supplement the SDLC in order to define requirements and/or try out designs. Structured methodologies were seen to concentrate on documentation and were perceived as inflexible. If the users were uncertain about their requirements, the methodology became a barrier to the progress of the project. Developers became frustrated by this scenario and many questioned the need for full documentation on all projects. Prototyping was seen as a partial solution to some of these problems. It relies on tools that enable the interface to be specified quickly. Examples of prototyping tools are Microsoft Access, Visual Basic, and PowerBuilder. It can be used as part of rapid application development (RAD), the main aim of which is to quickly put together a system shell by using structured methods, JAD techniques, and prototyping methods. Four types of prototyping have been identified [6] as discussed next. Feasibility Prototyping Feasibility prototyping is used to test the feasibility of a specific technology approach that might be used for an information system. For example, a university wants to improve its enrollment procedures. Too much time is spent on keying in the data. They think that students could possibly input the data directly into the computer system. Hence, a prototype is designed to test a range of student reactions to inputting their details of enrollment. In other words, it allows some input and simulates some basic searches. Based on the students’ reactions, the university can decide whether to go ahead or not. Requirements Prototyping Requirements prototyping is used to define the users’ requirements. It is used as a tool to encourage interaction between users and developers. The prototype is composed of screens that have menus, icons, and forms to illustrate the types
Introduction to Systems Development
55
of data to be captured or output. Users can then use the screens as a prompt to give further information. The actual design of the screens is not really important. Design Prototyping The user interface of the system can be developed and shown to users. The users assess the ease of use, the layout, the order of input fields, help messages, and so on, and provide feedback to the developers who can then modify the prototype. After several iterations, the interface should be in line with what the users find acceptable to work with. However, the prototype may not become the finished system; another tool may be seen as more appropriate for implementing the software. Implementation Prototyping When the design prototype is extended to become the actual system, it is called an implementation prototype. It might not include certain editing and security features which can be added later. Prototyping is not a return to development without a methodology and documentation. The process needs to be managed and ideally used alongside another methodology. It should be used with set objectives in mind, for example, for a small project or as part of the design of the interface of a large system. It is not a panacea for all system development problems. Soft Systems Methodology The Soft Systems Methodology (SSM) grew out of dissatisfaction with structured techniques for their underestimation of the issues associated with defining problems with the current systems and in defining a way forward. Peter Checkland [2] developed the methodology not just as an information systems methodology but as a general problem-solving approach. SSM has seven stages but has at its core the development of rich pictures and the ethos of empowering the users to decide on the acceptability and desirability of any changes to be made. The rich picture is a freeform sketch drawn by the user. It incorporates such things as concerns, challenges, issues, politics, and competition. The SSM sessions are facilitated in such a way as to promote open discussion based on the idea that real progress cannot be made until the issues and concerns are acknowledged.
56
Internet Commerce Development
References [1]
Martin, J., Information Engineering, Vol. 1, Upper Saddle River, NJ: Prentice Hall, 1989.
[2]
Checkland, P., Systems Thinking, Systems Practice, New York: John Wiley & Sons, 1981.
[3]
Martin, J., Information Engineering, Vols. 2 and 3, Upper Saddle River, NJ: Prentice Hall, 1990.
[4]
Graham, I., Object Oriented Methods, Reading, MA: Addison Wesley, 1994.
[5]
Hawryszkiewycz, I., Systems Analysis and Design, Upper Saddle River, NJ: Prentice Hall, 1998.
[6]
Whitten, J. L., L. D. Bentley, and V. M. Barlow, Systems Analysis and Design Methods, Homewood, IL: Richard D. Irwin, 1994.
3 Overview of the Internet Commerce Development Methodology Introduction This chapter presents an overview of the Internet Commerce Development Methodology (ICDM). ICDM covers the phases, techniques, management strategies, project management guidelines, and use of tools for developing Internet commerce systems. In addition, it includes features to facilitate the evolutionary development of the Web application. The methodology provides a flexible framework for developing Internet-based systems that is applicable to a wide variety of situations and different types of organizations. It does not provide a simplified set of tasks in a prescriptive manner. The approach acknowledges that organizational development via Internet commerce is sufficiently complex and varied to warrant the use of guidelines rather than detailed tasks that lack general applicability. This allows the company to adapt the methodology to the specialized conditions of the organization rather than rigidly adopting every phase and all techniques within the methodology. ICDM is a business analysis methodology as well as a systems development methodology. Many traditional information systems methodologies cover only the more technical aspects of systems development and do not start with any form of business analysis. Internet commerce is first and foremost a business direction and hence requires a thorough analysis of its place in the overall business strategy. The implementations of the strategy should always be aligned with the business goals and objectives of the organization.
57
58
Internet Commerce Development
Many business organizations are exploring the potential of Internet commerce. Some have developed Internet-based systems, but few have begun to tap into the rich potential it offers for business transformation. Perhaps the biggest problem faced by many organizations is the lack of structured frameworks for guiding the evolution of Internet commerce. ICDM aims to fill this gap by providing a structured approach that considers the softer aspects of organizations and developments in the wider business environment. It offers an alternative to ad hoc methods that carry a high risk of failure. ICDM has a number of component phases to guide the development of strategy and steer the processes related to Web site development (Figure 3.1). In parallel it provides a management structure for the evolution of Internet commerce in an organization. In this respect it works on several organizational levels. Although it covers the technical aspects of development, it does not ignore the importance of project management, general management, and organizational transformation. Internet commerce is more than a project that has a clear end and therefore it requires a management structure to oversee its evolving form. The remainder of the chapter describes and explains these facets of the methodology.
Strategy Phase The development of any Internet application should be driven by business strategy. If this is not the case, the full potential of the system may not be realized. Examples of business strategies are “becoming competitive in the quality of customer service provided” or “expanding into new markets.” Once these business strategies have been determined, further business goals could be identified. The Internet could then be examined as a way of supporting the business goals. Some companies prefer to approach strategic issues by taking a stakeholder view. This allows consideration to be given to the diversity of stakeholders and their needs. Another approach looks at various business models and how they can be adopted or mapped to the organization in question. Strategy can also be developed by examining opportunities and threats and then identifying how the Internet can be used to take advantage of the opportunities and avoid or reduce the impact of the threats. The ICDM encompasses business strategy, the development of Internet systems, and the appropriate management structures. The strategy phase involves developing an organizational strategy with an emphasis on the role of Internet commerce. A strengths, weaknesses, opportunities, and threats (SWOT) analysis can be conducted as a way of defining where the company’s
Overview of the Internet Commerce Development Methodology
Assess feasibility
SWOT analysis Threat of disintermediation
Organizational Web management team
Process change Assess feasibility
Evolutionary development
Strategy
Process reengineering
Value chain analysis
Transformation Business process reengineering
Meta-development strategy
Project team structure
Assess feasibility
Requirements gathering techniques:
Component strategy
Logical functional requirements
brainstorming, group requirements sessions
Semi-physical architecture
Design
Implementation Evolutionary phase
Figure 3.1 ICDM phases.
Component development
59
60
Internet Commerce Development
strengths lie and identifying the key environmental factors influencing the business. Strategy deals not only with exploring opportunities but taking into account new business models so that the strategy is tailored to the medium. Some companies, for example, decided quite early on in the Web boom to develop online retailing as part of their business strategy. They examined opportunities and the threats and often jumped in with both feet and many made costly mistakes. Wal-Mart is a retailer that went in for building a large commercial site but found the cost high. It made the mistake of copying its off-line business model to the Web by creating a huge online catalog without taking into account the update and maintenance costs [1]. Later Web site developers have learned from the earlier mistakes of others. One such company is a Seattle (Washington)-based organization called Nordstrom’s, which has built a large database of products with checkout counters following local tax laws. This means that sales tax is automatically calculated in states with Nordstrom’s stores. The site has an application that includes an address book feature, which stores credit card and address details to make repeat business easier. The scale and scope of the strategic changes should fall into one of three categories: process change, process reengineering, or transformation. Process change is related to the enhancement or modification of an organizational process with the aid of the Internet. Value chain analysis can be used to identify where value can be added for the customer. Process reengineering is the complete redesign of a process with the aid of the Internet. Transformation is the radical change of a business leveraging Internet technology. Value can be added to the value chain by providing improved customer service. Capital Blue Cross is a health insurance company based in Pennsylvania [2]. It decided to use the Web to reach out to customers. The company offers insurance plans and services, attracts new clients, and services existing customers via the Web. It now handles many customer queries related to claims in this way. Customer relationships management systems (CRMSs) are becoming a typical feature of Web-based systems. They add to the traditional methods of interacting with customers by telephone and fax. The main benefits of CRMSs are to reduce the cost of sales, increase revenue, and gather better customer data to improve support and increase selling options. A main thrust of an Internet commerce strategy may be to expand into foreign markets. Translating Web content to appeal to overseas markets may appear to be a relatively straightforward task. However, it is unlikely to be effective if it is approached in a naive way. Web content requires internationalization and localization. Internationalization involves considering how the business model can be adapted to other markets and languages. Banner ads should
Overview of the Internet Commerce Development Methodology
61
be written in the local language for example. Localization involves developing sites that are culturally sensitive.
Assessing the Feasibility of Adopting Internet Commerce Feasibility is about assessing whether the proposed project is viable. Viability is normally assessed in terms of the costs and benefits attached to the development of the application. Generally, the benefits, which are quantified financially, should outweigh the costs of developing and running the system. A 5-year timescale can be used to examine the feasibility because much of the cost of a system is incurred early in its life, whereas the benefits are more evenly spread throughout the life of the system. The costs are typically such things as staff time, hired expertise, equipment, and programmer time. The benefits are increased orders, less cost per transaction processed, more information, better quality information, increased staff satisfaction, and improved customer satisfaction. It is difficult to develop a cost/benefit analysis until more of the details of the system are ascertained. Hence, feasibility should be revisited several times in the early part of any Web application project. A relatively fast feasibility assessment should be conducted at the start of the planning and strategy development phase. Later, it can be revisited when more planning and strategy have been developed. A feasibility study can also be carried out for each component of the Web development and before and after the requirements have been gathered. Some organizations view their Internet commerce initiatives as an investment in the future. Rather than taking a typical cost/benefit analysis perspective where future benefits are estimated, the main benefit is seen as providing scope and choice for future business directions. This perspective assumes that a company that has stepped into the Internet commerce arena is in a better position to take advantage of new opportunities that arise in the area than a company that is watching from the periphery. Project Complexity and Scope Development projects can vary greatly in complexity. An Internet development project can vary in scope from setting up an entire Web site for a large organization, to developing a component of the Web site, to developing a small business Web site of limited functionality. These are very different types of projects and it is worth examining the factors that contribute to their complexity.
62
Internet Commerce Development
Project complexity depends on a number of factors: • Scope of the project. The scope of a project usually refers to the func-
tionality of a system. A system could have a narrow well-defined scope in that it might just deal with customer inquiries, or it may be broader in scope and cover a wider range of customer service options. • Size of the project. This can be measured in many ways, for example,
the number of functions, the number of sites, and the volume of information. • Number of users and range of users. As the number of users increases,
so too can the complexity of the system. A larger number of users often means more time spent consulting users to determine requirements for the system. The organizational dynamics of work groups often increases the complexity of systems. Work groups form social and political entities that cannot be ignored when developing information systems. • Geographic distribution of users. The geographic distribution of users
has an impact in several ways. The communications hardware and software infrastructure becomes more complex as data is sent across several sites. If users are internationally dispersed, linguistic and cultural differences may impact on the design process. The complexity of a Web site application can also be characterized by general functionality and applies equally to the intranet and Internet: • Static document publishing systems. These are often used for intranet
applications to put company manuals and documentation on the Web and to provide information to customers. They are relatively simple systems because they are not connected to databases, although they can be multimedia systems that include text, graphics, video, and animation. • Dynamic Web applications. These are more sophisticated interactive
systems. They include forms for input of customer details, which are then stored to a simple database or file. Querying facilities, for example to find staff telephone extension numbers, may also be present. • Complex Web applications. These types of systems provide a fully
interactive interface that connects to one or several databases. They can complete transactions such as adding, amending, or deleting. Examples
Overview of the Internet Commerce Development Methodology
63
include allowing suppliers access to the inventory control systems or allowing customers to make purchases that automatically update the order entry and stock control systems [3]. Other factors of project complexity include these: • Stage of evolution of the overall Web site. If there are no Web applica-
tions in the organization, the project will involve work at a strategic level to define the goals of the system. On the other hand, if the site is relatively mature and working well, then later projects will consist merely of additions that will not usually require the same broad planning phases, although some strategic planning will still be required. • Amount of expertise within the organization. The less expertise there is for any IS project within an organization, the higher the risk associated with the project. Expertise can save a great amount of time because it improves the chances of completing tasks correctly, working appropriately, using suitable tools, estimating better, and so on. If expertise does not exist within the organization, the expertise has to be brought into the organization. This can alleviate some of the problems but adds complexity since the organization has to source suitable consultants or vendors and assess their performance. • Number of interfaces with other systems. The more connections with other systems, the more complex the development and testing process. • Strategic nature of the project. If the project is critical to the organization, for example, if it is costing a large amount of money or the system it connects to is part of the core business system, then the consequences of failure will be significant. In such cases the project could influence the corporate profits and/or influence relationships with customers and suppliers.
Management Structure for ICDM The management and development process within ICDM takes place on three levels (Figure 3.2). The overall management and development of the entire Web strategy can be seen as a project in its own right. This first tier of management is a meta-development and management perspective that provides a framework for development. The team responsible for this should be composed of senior people from each functional unit within the organization. It is critical
64
Internet Commerce Development
Organizational Web management team
Web site or component production team
Analysts
Discipline specialists
Programmers
Web consultants
Figure 3.2 Web management and development structure.
that senior management maintain a high profile in relation to Internet commerce initiatives. Lack of support can spell disaster in many ways. For example, the project may not be fully integrated with the business policies and procedures within the organization, or it may be seen as not being an important project and as a result suffer from lack of resources, or the system may be underused once implemented. To avoid these problems top management support is essential. The second tier of management is concerned with the development of the components of the Web site. This team is also made up of people from different functions such as marketing, finance, and IS but they are not required to be the most senior people in the organization or the most senior people within the functional department to which they belong. Its composition can change over time and will depend on the type of project being undertaken and the knowledge and skills required. The second level project team directs, rather like a film crew, the specialists and technical people in the development of the Web applications. The third tier in the management and development structure is concerned with developing and implementing the system, so it includes technical development teams, analysts, content specialists, and Web development consultants. At all levels the work must be seen as being evolutionary in nature to cope with the inevitable changes that will have to be made.
Overview of the Internet Commerce Development Methodology
65
Meta-Development Strategy Guidelines The ICDM provides a framework for managing and developing Internet commerce systems. The approach provides guiding principles to be followed. These include such aspects as these: • Description of the phases and tasks. The management team should
•
•
•
•
•
clearly define the techniques and methods that will be used from the methodology. This includes the stages and techniques used in developing the Internet commerce strategy, such as SWOT analysis and value chain analysis. Communication protocols. The communication policy relates to the how, what, and when issues. This will cover the method of communication, such as face to face, e-mail, or telephone, and possibly include the use of templates for clearly defining the types of information to include. What-type issues relate to what the teams and team members should be communicating. Examples include project progress reports, problems, or concerns, and information updates for general staff. When people are informed is also of critical concern. The dates and times for progress reports should be clearly identified. Project planning issues. ICDM provides a framework for the management of Internet commerce projects. The management structures and reporting mechanisms are all part of the overall management strategy. The phases and deliverables act as objectives and goals. The progress of any development can be monitored according to tasks completed, expenditure, and quality of results (Chapter 10). Documentation standards. The meta-development team can decide issues related to the documentation of deliverables. These may be reports on the strategy or requirements or they may be software designs such as Web page templates or prototypes. Documentation can be kept on the intranet with restricted access for key personnel. Specific tools for documenting the Web site may also be decided at this level. Human resources management. The senior management team should decide on the composition of the cross-functional operations team and be involved in the allocation of roles and responsibilities. The metamanagement team should look at skills gaps in the organization and whether new staff should be employed. Underlying philosophical approach. Organizational transformation requires more than a set of stages and tasks. It requires a cultural shift.
66
Internet Commerce Development
For this to happen, it may involve a change in organizational structure or the empowerment of staff. How this is done depends on the philosophical or ethical stance taken by the organization in terms of how people will be treated and how it wants to be perceived in the marketplace. The meta-development strategy for Web applications includes both development and management issues. It emphasizes setting the overall development framework, policies, and procedures for the ongoing work. Even if the Web site is relatively small, these issues have to be resolved and communicated. The meta-development approach involves defining the goals of the Web site (these should be linked with the strategy phase) and defining the high-level requirements of the organization. The type of meta-development approach to use must also be determined. Several strategies can be employed by a company when developing a new Web site. It is unlikely, unless the Web site is small, that the entire site will be designed and implemented in one project cycle. The key alternatives are listed next: 1. Plan the entire site and strictly regulate its distributed development. 2. Plan the core of the Web site (outsource or in-house) and make no further changes. 3. Plan the core of the Web site and let user departments develop their own neighborhoods. 4. Plan the core of the Web site and loosely regulate the development of the rest of the Web site. 5. Allow unregulated development of the entire Web site. 6. Plan the entire Web site, develop the core, and then incrementally develop the rest of the site. The following analysis issues must also be considered: information gathering methods, how to define the users, and acquiring and working with consultants and vendors. High-level design issues include these: • The use and development of the network infrastructure; • The use and development of software; • Use of browsers; • Use of packages for Web site development;
Overview of the Internet Commerce Development Methodology
67
• Documentation standards; • Reporting mechanisms; • Content issues.
Implementation issues include implementation tools and languages, training, testing, and evaluation; the evolutionary phase includes the management of updating tasks and further development.
Site and Component Development Functional or divisional components of the Internet system can be approached as discrete projects. The implications of the integration with other components of the Web application still need to be considered. A functional component could be a component that provides customers with the option to interrogate a database of products, or to obtain details about customers for marketing purposes. Even so, a multidisciplinary team is still required because any component of a Web site is still concerned with implementing business strategy not just technology. Component Focus When the meta-development strategy has been finalized the individual components of the Web site can be developed. A component of a Web site can be based on a division of the organization, a department, a section, a group, or a functional component that transcends departments. Component Methodology The approach for a relatively large component of a Web site would adopt the guidelines from the meta-development framework but would also include more detailed methods for determining and reporting costs and resources, and communication and reporting methods. In addition, more detailed information on how the tasks should be accomplished, such as how to gather requirements, how to select hardware and software, and how to resolve detailed design issues, should be included. The component development should have had many issues resolved by the meta-development approach. The component development should include the following high-level phases: strategy, analysis, design, implementation, and evolutionary phase.
68
Internet Commerce Development
Of course, the steps involved in each phase will depend on the nature and complexity of the system. An overview of the component development phases follows. Strategy The team members responsible for developing the component of the Web site should make sure they are well aware of the organizational strategy and the policies and procedures that have been laid down by the meta-development team. They should determine the key goals and business strategies of the unit by consulting with user management. Analysis Detailed requirements need to be determined such as the types of documents to be managed, details of the functions required, or specific links to other systems or databases. The method of information gathering must be determined and the information gathered during the development process managed. Design This involves the detailed design of the Web component. It includes such things as decisions about form versus function. Briefly, this means the tradeoff between the utility and functionality (function) and the time and effort spent on design features (form). The detailed features of design, such as use of frames, the overall design rationale, use of graphics, use of color, use of fonts, the navigational design strategies, and use of links, need to be determined. Designing Web sites can require a great deal of creativity. The Web site may need to convey a certain image and may have to appeal aesthetically to a select group of people. Implementation Implementation involves such tasks as implementing the application, testing the system, evaluating the system, and training the staff. Evolution Phase To be a successful Web application, the site needs to be managed. The component needs managing to make sure updates are performed when needed and that enhancements and additional functionality accord with the overall strategy of the component.
Overview of the Internet Commerce Development Methodology
69
Beyond the Methodology The methodology is part of larger systems that influence its overall success. The organizational structure has a role to play in the development of Internet commerce. The trend is toward flatter management structures that can adapt quickly to change and that assume an empowered and motivated workforce. The structural features of the organizations can therefore act as a barrier to change. Likewise, the culture of the organization needs to be conducive to dynamic change. Organizational culture can influence the way that staff think about their contribution and their work expectations. If staff are poorly motivated, not empowered, not trusted, and not provided with appropriate challenges, positive change is difficult to bring about. In other words, the methodology will not work if the organization is not working! For Internet commerce to work in the long term, senior people in the organization need to rethink their ideas about the business. Organizations faced with constant change must work on acquiring and training the right people and then providing the right environment for them. If this is done, those people will keep abreast of technological changes, come up with ideas, and think from a business perspective so that the Internet commerce strategy evolves rather than stagnates. The right people in the right environment continually reshape the nature of the organization. ICDM takes into account the changing nature of the wider business environment. New business models are developing as a result of the growth of the Internet and the World Wide Web. The methodology must take into account this “big picture” because many opportunities and threats result from scanning the changing business world. New companies that do not have the encumbrances of traditional methods and mind-sets can quickly develop to take advantage of the opportunities. Existing organizations often find it tougher to change dynamically. Changing distribution channels present the threat of disintermediation to those organizations that are dependent on suppliers who can market cheaply and effectively directly to the consumer. Having a business strategy and analysis component in the methodology is very important for working through these types of issues.
Summary Internet applications are constantly evolving as systems and hence there is no clear end to a Web project. This factor should influence the choice of methodologies and approaches to developing Web-based systems. Although Web-based projects vary greatly in complexity, a three-tier approach to Web development
70
Internet Commerce Development
and management is recommended. The first tier manages the ongoing development process and the second tier is concerned with the development of functional or divisional components of the system. The third tier is responsible for implementing the system.
References [1]
Blankenhorn, D., “Shopping (http://www.datamation.com).
Without
the
Mall,”
Datamation,
Dec.
1998
[2]
Kay, E., “Caring for Customers on the Web,” Datamation, July 1999 (http://www.datamation.com).
[3]
Fournier, R., A Methodology for Client Server and Web Application Development, Upper Saddle River, NJ: Yourdon Press, 1998.
4 Strategic Planning and Internet Systems Introduction The development of Internet applications should be driven by business strategy. This chapter explains various strategic planning approaches that are used in organizations. The strategic planning phase of the Internet Commerce Development Methodology (ICDM) is described. ICDM relies on business process reengineering and value chain analysis for its core methods. The business environment is changing more rapidly than ever before. The Internet has opened up markets to a global level. Consumers are changing in that they are more educated and discerning. They are increasingly requiring a high level of customization in products and services, many of which become obsolete very quickly. Companies endeavoring to tap into the potential of Internet commerce should develop strategies that take this changing business environment into account. Electronic commerce has a number of advantages to offer businesses: • Reducing costs by streamlining processes; • Increasing income by adding revenue sources; • Improving customer service by providing more and better quality
information; • Increasing innovation by sharing ideas; • Improving knowledge management through the use of intranets.
71
72
Internet Commerce Development
While few organizations would dispute that Internet commerce provides real opportunities for businesses, these opportunities can only be realized by developing and implementing effective strategies.
Business Strategies and Goals If a business organization is to operate effectively over the medium and long term in our changing economic environment, it must have a vision and strategic plan. A strategic plan gives an organization a focus. Without such plans the business can easily meander and be less competitive than it could be. Strategic plans can be developed at several levels of the business and should ideally be integrated. Of course, effort must be expended on communicating the strategies to all members of the organization. An effective strategic plan that has been properly communicated has the potential to radically improve the fortunes of a business. The Strategic Planning Approach A strategy is a large-scale plan used to achieve long-term goals. A corporate strategy is made up of a number of components (Figure 4.1). The organization should have a mission or vision statement. This tries to define in several sentences what the company is ultimately about. For example, Western Mining Corporation (WMC) is a large mining company with the following vision: “WMC is a minerals company determined to be BEST. BEST represents our commitment to Bottomline, Environment, Safety, and Team performance.” A vision statement can be expanded further (as in Western Mining’s vision statement shown next) to communicate broad organizational aims. These aims should provide a steering mechanism for the functional units where more detailed objectives and goals can be specified along with strategies to achieve them. Western Mining’s Mission: Our aim is to maximize shareholder value by finding, acquiring, developing, and operating mineral resource projects throughout the world. We will maintain a diversified portfolio of commodities and exercise prudent financial management. To achieve our purpose, we develop and retain top-quality people, management, skills, and technology.
WMC’s vision and mission outline key aspects of the business and can provide guidance for the use of, for example, technology within the organization.
Strategic Planning and Internet Systems
73
Strategy Development Resources
Markets
Competition
MISSION
Strengths Weaknesses Opportunities Threats
Organization
Skill
Environment
Politics
Capital
Growth
Economy
Defensive
Stability LEVELS OF STRATEGY Corporate
Business
Functional
Strategy implementation
Figure 4.1 The components of corporate strategy.
Levels of Planning Organizations typically develop strategies at three different levels: corporate, business, and functional (Figure 4.2). The corporate-level strategy is developed by the senior people in the business. It can cover new business directions, the closing of some business operations, and the allocation of resources between branches of the company’s operations. Business-level strategy applies to organizations that have semiautonomous businesses operating somewhat independently. These businesses need to develop their own strategies because they are usually in the best position to do so. However, the business strategy should support the broad aims of the corporate strategy. Functional-level strategy is concerned with plans at the functional business level such as marketing, information systems, and finance. Effective strategies at the functional level can provide a competitive edge to the organization as a whole. For example, the development of forms of electronic commerce via a well-designed Web site has the potential to improve market share for an
74
Internet Commerce Development Corporate-level strategy Corporation
Business-level strategy
Business unit 1
Business unit 2
Business unit 3
Business unit 4
Functional-level strategy
Research and development
Marketing
Manufacturing and operations
Finance and accounting
Human resources
Information systems
Figure 4.2 Levels of organizational strategy.
organization. Coordination across the different levels of strategic planning is essential for it to be effective. For the corporate strategy to have any effect, it must be backed up by plans at the business and functional level that are aligned. Information Technology and Strategic Planning The management information systems (MIS) function of the organization should develop its own strategic plan that supports the corporate plan. This will cover its own mission and strategic directions, and identify opportunities and threats. The MIS strategic plan’s main thrust is to develop and explain the information architecture that will provide the best return for the organization. The information architecture defines the data, processes, information, organizational network, and stakeholders. Information technology (IT) trends and opportunities are explained. The technology required to support the business aims of the organization is defined. Strategies for Developing Internet Commerce The development of Web-based systems is, first and foremost, a business decision, not an IT decision. There are IT decisions to be made, but any IT
Strategic Planning and Internet Systems
75
development should be driven by the business needs of the organization. In this respect the Web or Internet development should follow a top-down approach so that the resulting systems are aligned with the strategic objectives of the organization. Dangers can arise for an organization when the developments are driven by the information technology without due consideration of the strategic directions of the business. These types of projects can result in systems that: 1. Take too much time and money to develop because they do not have the full backing of senior people. 2. Do not provide a significant return to the organization because they are peripheral to the core business needs. 3. Displace other, perhaps more worthwhile, projects from being developed as they consume organizational resources. 4. Are not maintained effectively and eventually become a problem for the business. The Web developments may be poorly perceived by the customers and/or employees. Initiative should be encouraged within the MIS division, but projects should be assessed and adopted according to whether they support the corporate, business, and functional strategies. Projects should not be started solely because other organizations are developing certain systems, although this may be an opportunity to investigate. Equally, there is a place in organizations for experimentation. Systems may be trialed and the returns monitored. However, they must be recognized as experiments with appropriate budget allocations that the organization can afford to write off if the experiment does not produce worthwhile results. Projects that use leading edge technology or use technology in an innovative way and are aligned with corporate strategy have the potential to provide a competitive advantage for the business.
Internet Commerce Development Methodology The use of the Internet for business purposes can take many forms. The Internet can be used strategically as a transformation agent to radically change the nature of the business. It can also be employed to improve processes or parts of processes over time and incrementally add value to the business. The Internet Commerce Development Methodology proposed in this book provides a strategic planning approach that considers which option is most appropriate for
76
Internet Commerce Development
a given situation (Figure 4.3). ICDM draws on business process reengineering and value chain analysis for its core strategic planning tools. SWOT Analysis To decide on a strategy for a business, business unit, or functional area, managers need to assess an organization’s competitive situation. This involves assessing the organization and its environment. The process is known as competitive analysis. SWOT analysis is one method of competitive analysis [1]. The competitive situation for the company is assessed by examining its strengths (S), weaknesses (W), environmental opportunities (O), and threats (T). The competitive analysis will yield different results for each business examined. However, there are some broad categories of strengths and weakness that may be useful aids in the analysis (Table 4.1). The strengths examined in the SWOT analysis are the strengths of the business. The internal strengths are features of the organization such as streamlined administrative systems or technologically adept staff. The internal weaknesses of the organization can be detailed in much the same way. The wider environment can be scanned for economic, technological, and social trends that can be exploited. New government legislation may create an opportunity for some organizations. For example, government departments may require suppliers to be year 2000 compliant. This creates opportunities for software consultants and IT training organizations who can help companies
Radical change
· · ·
Business Business unit Function
Transformation
Business process reengineering
Disintermediation? Process reengineering
Strengths Weaknesses Opportunities Threats
Incremental change
Figure 4.3 ICDM strategic planning phase.
Process improvement or enhancement
Value chain analysis
Strategic Planning and Internet Systems
77
Table 4.1 SWOT Analysis Internal to Organization
External to Organization
Strengths
Weaknesses
Opportunities
Threats
Highly skilled staff
Market image
Expand into new markets
Increasing competition
Latest technology infrastructure
High staff turnover
Take advantage of new technology
New product developments, obsolescence
Greatest market share
Low profit margin
New government legislation
Recession in economy
Sound management
Poor administrative procedures
Growth market
Skills shortage
become accredited. The external threats need to be considered because future prosperity depends on how the organization deals with these. Threat of Disintermediation Besides performing a competitive analysis, organizations should assess the threat of disintermediation. Due to the ease with which suppliers of products and services can market and sell directly to consumers over the Internet, those companies that act as intermediaries in the distribution chain risk being bypassed. This would clearly have disastrous consequences for the intermediaries and is termed disintermediation. The businesses that are most at risk of disintermediation are those that do not significantly add value to the products and services they are distributing. Opportunities and Business Models The Web supports a variety of business models that can serve as exemplars for organizations developing an Internet commerce strategy. They highlight in a simplified way many of the business opportunities that the Web presents and so they can play a role in examining the opportunities as part of the SWOT analysis. A company can decide to adapt its off-line business model to the Internet. In some cases organizations have chosen to use the Internet to experiment with business models that are quite different from their off-line approaches. It is often these experimental systems that have been the most successful in capturing the attention of Web surfers. Web-based business models are generally
78
Internet Commerce Development
classified on functional lines such as retail, marketing, or customer service type systems. Some examples of popular business models are described in this section (and throughout the book). However, the Internet has been instrumental in developing a new type of organizational structure called the virtual organization and this will be discussed first.
Virtual Organizations A number of characteristics are commonly used to define the term virtual corporation. A key feature of virtual corporations is that they form structures that are made up of different companies or individuals that come together to complete certain tasks and therefore appear as one organization to the customer or client. The communication, cooperation, and coordination related to their work are enabled through the use of information technology. Virtual organizations or teams must share data, information, and knowledge. This type of organizational structure is typically formed to explicitly share knowledge. Knowledge management can be improved by accessing the organizational memory with the aid of information technology. The richer the knowledge representations, the more knowledge that should be communicated. Organizational Web sites, whether internets or intranets, can play a strategic role in providing a rich medium for knowledge communication. Despite the plethora of articles being written about virtual organizations, ambiguity still exists over certain features of them. It could be argued, for example, that there are degrees of virtuality. Some organizations may interact totally via information and communications technology, whereas others may intersperse face-to-face communication. It is assumed in the literature that virtual organizations need to be flexible to cope with a variety of tasks and locations. However, there are varying degrees of flexibility and it is a relative concept. Trust is often viewed as an important characteristic of virtual organizations [2], but some studies conclude that it is no more significant in virtual organizations than it is in nonvirtual organizations [3]. A commonly proposed characteristic of virtual enterprises is that they operate with some informality and with a flatter management structure than the traditional hierarchies found in many bureaucratic organizations [2]. Ahuja and Carley [4] suggest that this is an oversimplification of the management approach required in virtual environments. They argue that the management approach (centralized/hierarchical or flatter/decentralized) should depend on the task or the project being undertaken. The Internet or intranet applications of a virtual enterprise require careful thought and consideration just as with nonvirtual organizations. Indeed, due to the heavy emphasis on the use of communications technology in virtual
Strategic Planning and Internet Systems
79
organizations and the geographically distributed nature of these organizations, we might assume that their Web sites would be even more strategically significant. One of the best known virtual retail companies is Amazon.com, the bookseller. CDnow is also a well-known example and its history highlights some interesting features in the life of this fast-moving business paradigm. CDnow is a CD retailer that does not carry stock. It takes orders and passes them on to its suppliers and distributors. However, CDnow faces great competition from other music companies trying to emulate their business model. In mid-1999, faced with increasing losses, CDnow merged with Columbia House, a direct retail music club jointly operated by Sony and Time Warner. CDnow is now the main thrust of Sony and Time Warner’s EC strategy. There are many spin-offs for CDnow, such as access to their entertainment and media properties and access to their artists and record labels for interviews and behind-the-scenes footage. A key lesson of the Internet retail model is that the Web can be used to sell additional products and services beyond the core product or service. CDnow has done this by selling CD recording devices and they are planning to sell video movies and a range of other goods. Because they do not have to stock these products, it is a cost-effective strategy. They are also planning to use the Web to develop a customer relationship management system whereby customers can register and be informed about new releases or specials at their discretion.
Retail Sales Transaction-based systems that allow customers to buy various products and services over the Web are now commonplace. Many companies use this approach to supplement their traditional retailing channels. It provides a convenient service for consumers who can order products from the office or home at a time of their choosing. For companies the model is not as straightforward as it might first appear because the Web application should be preceded by a strategic plan and accompanied by a transaction support infrastructure. Such systems need to deal effectively with payments, ideally link to corporate database systems, and provide customer service support. Beyond a basic retail model, the Web can be used in innovative ways to retail products and services. For instance, Internet auctions can provide an alternative to off-line approaches. Retail auction sites generally require a large number of visitors to generate the level of competition needed to shift products and services in a cost-effective manner for the company. The method can be used as a way of selling slow-moving stock and attracting general interest in the
80
Internet Commerce Development
Web site. Auctions have been used for selling airline seats, cars, and even cases of wine. A particularly successful form of Web retailing has been in the area of digital goods. Software, for example, is easy to download off the Internet and downloadable music appears to be a new direction in the music industry. Likewise, information in the form of research reports and magazines can easily be sent to subscribers over the Internet. Even providing access to the Web in different ways from different situations can be a strategy. Soon consumers will be able to access the Web from basically anywhere, such as work, their home, their car, and even while walking down the street. Interestingly, General Motors has announced the “Web car,” which is a car with voice-activated Internet access [5]. GM plans to put one billion dollars into its electronic commerce ventures. That is not to say that more traditional products and services cannot use the Internet effectively. Many business owners thought that the Web was only suited to businesses with certain characteristics. For example, whoever thought that a butcher would find a place on the Web? Omaha Steaks has shown that the Internet can be used for the most unlikely of products [6]. It sells a variety of steaks, as well as a range of other frozen foods, such as desserts, appetizers, seafood, poultry, veal, and lamb. The Web order interface connects to the company’s back-end order processing system. The Web initiative has proved a very successful venture for the company with an increasing percentage of orders coming this way.
Marketing and Advertising The Web can be used for brand name marketing and for sending sales information, product catalogs, and product or service announcements. Marketing systems, just like retailing systems, require considerable planning and support. Many strategies and techniques can be used to market via the Internet and many are particular to the Web in that they have no off-line equivalent. The Web has a number of unique attributes: All customers can be accessed or informed at once; large amounts of information can be communicated cheaply; users can interact with the system; and information can be provided with relative ease. The Web can be used strategically to capture an increased share of a particular market segment. Some companies are aggressively marketing via the Web with advertisements at leading Internet sites. First USA is the United States’ largest issuer of Visa and MasterCard credit cards. It has used the Web to market its cards, starting with a deal in 1996 with America Online. It has now locked into more than 50 deals with some of the Web’s biggest players
Strategic Planning and Internet Systems
81
such as Yahoo, Excite, MSN, eBay, WebTV, CDnow, and GeoCities [7]. Through this strategy First USA wants to position itself to the next generation of credit card customers. The better examples of marketing via the Internet leverage the interactivity of the medium and the facility to allow users to exchange information with other users. The development of online communities provides an example of the real potential of the Internet for marketing (discussed later in the chapter).
Customer Service and Support The Web offers a method of providing improved customer service and support in a cost-effective manner. Web-based customer service inquiry and support systems typically reduce the cost per inquiry to 20% or less compared with traditional telephone inquiries. For the customer, the main benefit is the convenience of being able to get support and service at a time and place of their own choosing. The Web can be used for providing after-sales support in the form of extra information on how to use or care for a product. Software patches or updates can be downloaded in a cheap and efficient manner, so the Web acts as a distribution channel for customer support. Online chat systems can be used where the customer base is large enough so that customers can help each other. Customers or potential customers can make inquiries via the Web and receive personalized replies. Airlines, for example, have systems for their frequent fliers that the flier can query easily rather than telephoning a customer service center. A company can provide information and interactive applications to improve customer relationships and service. The tax office, for example, can provide information on completing tax returns, or a bank can provide information on the types of accounts it offers.
Online Communities Internet communities are real-time online forums where people who have something in common can communicate and exchange information. They use online chat, publishing tools to gather and share information, message boards, and e-mail and generally emphasize a high level of interactivity. The interactions may be between the users themselves or between the company and the users. Internet communities form a business model in their own right. They provide a framework for integrating content, communication, and business and usually fulfill social and business objectives. Communities can be based around any common interest. They can be based on such things as geography, age,
82
Internet Commerce Development
support groups (e.g., cancer society), or activities (e.g., professional activities, sports). Five key attributes distinguish an Internet community from other online ventures [8]: 1. Community members. The community members are the people who visit the site and feel part of the community. People choose to be members and are never compelled to take part. The members have something in common, but membership may be short lived. Members of the community feel a sense of ownership and contribute in various ways to the community by providing information, chatting, and posting to discussion groups. In this way the members create the community. 2. Community organizers. The community requires an organizer who is responsible for the virtual space in terms of growth and maintenance. The owner needs a sponsor who will invest in the community for a reasonable time span. 3. Guiding principles. Rules and guidelines must be used to ensure that the purpose of the community is upheld in the running of the community. Some examples of guiding principles are tolerance of alternative opinions, and a clear statement of moral expectations and what is considered to be the focus of the community. 4. Institutional benefits. There should be clear institutional benefits for building the community. Intranets can be developed to foster a sense of community and sharing, or internets can be used to create a loyal customer base. 5. Interactivity. The richer the media space, then potentially the more scope there is for developing a vibrant community. The easier the system is to use, the lower the barrier is in terms of entry to the community. Community building is not suited to every company and product. A soccer club with a large supporter base may find it worthwhile to develop an online community. Through it they could increase their image and use it for marketing and advertising purposes. However, why would a consulting company want clients to chat with each other? The clients might swap information on fees paid and what they got for their money!
Strategic Planning and Internet Systems
83
Supplier Model The Web can be used to facilitate communication and interaction between companies and their suppliers. These systems fall into one of several categories. Inventory management systems can be developed to allow suppliers access via the Web. The supplier can then be responsible for sending products when stock levels are low. This can result in a reduction in purchasing and inventory management expenses for the company. The documentation related to purchase orders can also be sent electronically, speeding up and increasing the accuracy of data in the ordering–shipment cycle. Used innovatively, the Web can provide a medium for improved communication on many levels between organizations. Information, designs, and data can be put on the Web to inform suppliers or partner organizations of changes in strategy, product development, and market conditions. This information can be used by the suppliers to develop customized products or services. Solectron Corporation is a manufacturer in the electronics industry that has used the Web to speed communication between organizations through reengineering of key processes [9]. It used to take up to 10 days to develop product prototypes because of delays in the exchange of data between the customer and themselves. Solectron has now developed an Internet-based supply chain management system that has moved materials planning, inventory control, and other processes to an Internet-based virtual private network (VPN). The VPN is used to link 21 plants worldwide, plus some customers and suppliers. The system means that Solectron can now turn prototypes around in 24 hours or less.
Intraorganizational Commerce Intranets are being used for a range of organizational applications that are revolutionizing internal communication and information processing. As document management systems, intranets provide a cost-effective method of presenting documents that incorporate policies, procedures, and organizational initiatives. Transaction and query systems can be developed for many internal functions such as IT support systems, internal purchasing, raising orders, and even matters related to payroll and leave entitlements. Intranets can be used for sharing information. Individuals can post documents to the Web for others to read and bulletin boards can be used to share ideas or raise questions. In fact, intranets are only just beginning to be viewed as potential knowledge management tools. Many intranets are simply designed to capture and present data and information. However, for effective knowledge
84
Internet Commerce Development
management more than this is required. Techniques for capturing and sharing data that provides an environment conducive to knowledge transfer need to be explored. Course of Action From the SWOT analysis, the examination of appropriate business models, and a review of the threat of disintermediation, a decision on the level of change required should be made. If the business has very significant strengths and few real weaknesses and threats, then incremental improvement of processes would seem appropriate in most cases. However, if there are significant threats and, for example, there is a real threat of disintermediation, then a more radical transformation is probably required. Between these courses of action there may be increasing competition and therefore the use of technology such as the Internet to reengineer key processes can be used as a method of gaining a competitive advantage. Travel Agency Case Study, Part 1 Traditionally, retail travel agencies have acted as intermediaries between airline companies and wholesale travel companies and the consumer. Travel consultants provide the customer with information and reservation facilities. However, the Internet and the World Wide Web provide a whole new set of challenges and opportunities for this business sector. Strengths Travel agencies are staffed by travel consultants who typically have detailed knowledge of particular travel destinations. They provide a face-to-face service for customers and may have developed loyal customers who trust their judgment. Weaknesses Profit margins are small in most travel agencies. Salaries are also low for most travel consultants and hence finding and keeping motivated staff are often problems. Travel agencies are tied to travel distribution systems, such as Galileo or Sabre, which have limited flight, hotel, and holiday options. Customer expectations are increasing in terms of requiring customized holidays with a range of options. These demands take considerable time to source and package with no guarantee that the customer will go ahead and purchase.
Strategic Planning and Internet Systems
85
Opportunities The Internet provides a number of opportunities for travel agencies to interact with customers. An online site can provide information 24 hours a day and 365 days a year to potential customers, and access is not geographically restricted. A well-designed Web site can provide detailed information on holiday destinations as well as visas, climate, finance, and so on. It can also be used to develop relationships with customers by keeping them informed of special flights and holidays. Threats The major threat to travel agencies stems from airlines and wholesale travel companies offering their products and services directly to the customer. Large online agencies have gained significant attention in the travel industry and provide some evidence of a restructuring within the travel industry sector. It is likely that changes in the distribution chain will result in retail travel agencies experiencing lower business volume and eventual difficulty in maintaining business viability. Course of Action for Travel Agencies It could be argued that the disintermediation of travel agencies is likely to increase during the next few years. Because the threats to this business sector are really quite serious, radical change is required in many cases. Hence, reengineering of some business processes or a transformation of the entire business requires examination. Using the Internet to help in reengineering a travel agency would appear to create many new opportunities. These will be investigated in Part 2 of the travel agency case study later in this chapter.
Strategic Options The use of the Internet in a business should be driven by business strategy, hence, the early part of this chapter has dealt with defining strategic business directions. However, technological innovations often create business opportunities that can drive new strategic openings. The Internet is one such technological innovation. Exploring business uses of the Internet and the development of business strategies and goals can go hand in hand. Some organizations have rushed too quickly into developing an Internet presence without due consideration of aligning it with a sound business strategy. The result for some has been abandoning the Web site projects because
86
Internet Commerce Development
they are not providing a sufficient return to the business. In some cases, Web sites have undergone radical changes because they caused too many problems. For example, Gibson musical instruments offered guitars at 10% below the list price on their Web site. There were so many complaints from their existing retail dealers that the sale of guitars was taken off the Web site within a month [10]. This section of the chapter describes the strategic options in relation to Internet commerce that are part of ICDM. Business Process Reengineering The concept of reengineering emerged in 1990 [11] and was further developed in a work produced by Hammer and Champy in 1993 [12]. They define business process reengineering (BPR) as the fundamental rethinking and redesign of business processes to achieve dramatic improvements in critical, contemporary measures of performance. Their interpretation implies a radical approach to business change. Manganelli and Raspa [13] suggest that a clean slate approach to reengineering is not always necessary because the business may have great strengths that require developing and improving. Therefore, incrementally improving or replacing key processes may be the preferred strategy. BPR is enabled by information technology and takes a value-added customer focus to the redesign and integration of organizational processes. The forms of BPR are shown in Figure 4.4. Option 1: Transformation Transformation, as the word suggests, is a radical method of reengineering a business. It usually takes a clean slate approach where fundamental questions are asked about the business purpose and goals. Then alternative ways of achieving those goals are examined. The resulting systems and business can be substantially different from current operations. Features of a successful transformation could include the following [14]: • Significant improvements in business performance; • Significantly improved staff satisfaction; • Significantly improved perception of the business by customers and
suppliers; • Mission, purpose, and direction are clearly articulated and understood across the organization.
Strategic Planning and Internet Systems Risk
Low
Paradigm shift
87 High
Evolutionary
Transformation
Cultural change
Level of change
Process reengineering Business process reengineering
None
Process improvement Local
Incremental
Scope
Business wide
Figure 4.4 Various forms of BPR. (Based on a diagram by Talwar [14].)
Besides a change in processes, there is a cultural change within the business. The impact of transformation is far reaching, radical, and involves considerable risk. Creative Destruction Radical transformation sometimes cannot take place without the replacement of certain parts of the business. Traditionally in the business world the emphasis has been placed on adding new business directions to current operations. However, in today’s competitive environment it may be impossible to develop a radically transformed business without destroying some aspects of the existing business. This process has been termed creative destruction by Harvard economist Peter Schumpeter. For example, the goals of the Web strategy and existing business goals may be in conflict or be competing, and therefore they may be difficult to maintain. Global Strategy The growth of the Internet has created a large global market of more than 100,000,000 consumers. Some companies are able to take advantage of the global opportunities provided by the Internet. National borders, time zone differences, and the cost of advertising in remote areas become less of a problem. The flexibility provided by the Web means that a one-person operation can
88
Internet Commerce Development
develop a global strategy and implement it in a cost-effective way. A global strategy needs to consider the differences in culture, language, and distribution mechanisms. The Web can be used to gather information or source products and services from suppliers to cut costs or provide a stimulus for improvement. A small environmental protection consultancy, for example, could use the Web to find suitable projects and research grants. Their expertise may be in demand worldwide, but they may only be applying for projects within a restricted geographic domain because the publications they use as a source of information are locally or nationally oriented. Through the Web, however, the company can apply for projects on a global basis. Although many companies are considered global entities, there is no generally accepted understanding of what makes a business successful globally. Companies that have managed to sustain a competitive advantage globally have certain characteristics (for instance, see http://www.deloitte.com/davos/ global.html). These can be applied to developing a global Internet commerce strategy.
Governance and Responsibility The directors need to be knowledgeable about the regions to which they are going to market. The company should disclose data and information so that it is readily accessible to other countries, and the ethical standards of the organization need to be understood by employees worldwide.
Strategy and Planning Projects need to be given the go-ahead according to their potential to create value for shareholders, customers, and employees. The company should have the ability to develop alliances with other companies in other regions and the world should be seen as a single economic and operating entity.
Marketing and Service Marketing should be on a global basis and attempt to develop a global brand but it should take into account local needs.
Operations and Technology The company should source materials from the most cost-effective supplier. Core processes should be standardized yet allow for specialization at the local level. The Web can play a leading role in the technological infrastructure by improving the supply chain management systems and in the marketing and retailing of services and products.
Strategic Planning and Internet Systems
89
Research and Development Researchers require information about global markets, and knowledge sharing should be encouraged. This again can be facilitated by Web technology, which can also be used in developing strategic partnerships across the world.
Human Resources Management Staff should be moved to geographical locations where they can both disseminate knowledge and absorb it. Travel Agency Case Study, Part 2 Travel agencies that have decided to reengineer in a more radical sense have substantially changed the nature of their businesses. Some have specialized in particular travel destinations or in types of holidays such as historic tours or skiing holidays. Many have transformed their businesses from having a transaction and reservation focus to becoming information providers. This change in emphasis can be supported by using the Web to search for specialized information or by providing large amounts of information in Web sites with links to other sites. The aim behind this is to provide the customer with information first, which will then hopefully lead to a transaction later. The specialized knowledge of niche holidays coupled with the information service attitude are part of a reengineering process that some travel agencies are undergoing to compete with the changes in the distribution chain discussed in Part 1 of the case study. Option 2: Process Reengineering Process reengineering is probably the most popular form of BPR. It involves the fundamental redesign of an entire process in order to achieve significant improvements in the organization. A process is considered to be a set of logically related tasks performed to achieve a defined business outcome. Process reengineering is not as radical or high risk for the business as transformational BPR and does not require the same level of cultural and attitudinal change. Business process reengineering looks particularly at enterprise processes that cut across business units. The information systems built for specific functions or units often become outdated because new processes transcend these compartmentalized functions. BPR is about identifying and modeling business processes and changing existing systems to support those processes.
90
Internet Commerce Development
The need for business process redesign comes about for the following reasons: • Rapidly changing technologies; • Shorter product life cycles; • Increased competitive pressures and the increased demand for quality
products and services; • Inefficient use of organizational resources due to organizational change or lack of change. Despite the potential of BPR, there are concerns about its perception as an organizational strategy. Martinson and Revenaugh [15], for example, are of the opinion that although BPR was an important concept in the 1990s it has been commonly associated with negative connotations such as corporate downsizing and inflated consultancy fees. They go on to say that BPR has commonly been associated with slashing staff numbers, and while this may be a short-term fix, they suggest it is not a long-term strategy for success. Some organizations have used Internet applications to reengineer aftersales service. Web sites can include information on how to use and care for the product they have bought with details about accessories that can be purchased. Many internal organizational processes, such as internal promotion or administrative systems, have been shifted entirely to intranet applications. Rather than merely replicating existing processes, the Internet allows developers to change the processes by taking advantage of the flexibility of the digital medium. Many job recruitment openings are simply posted to the corporate Web site. Although this may increase the number of applicants, the Web can be used more innovatively by allowing greater interaction between the company and applicant. Both parties can then get a better idea of what each other is about. For example, a resume builder can be used so that the information gathered is relevant and formatted to the organization’s requirements. In addition, applicants can be asked a series of prescreening questions to determine if they are suited to the position in the first place. These could involve personality related questions, skills and knowledge related questions, or ask what the applicant is looking for in a job. Some believe that the days of the paper resume are numbered because in the next few years companies will require all applications to be made online. A pilot electronic commerce government project in Sweden focused on a local authority called Skelleftea [16]. Dairy products were chosen as the target test area. The district’s local services such as schools, daycare, health care, and
Strategic Planning and Internet Systems
91
elderly care centers found that the purchasing costs for dairy products were as high as the cost of the products themselves. They used process reengineering for the ordering processing and in doing so reduced the number of deliveries by 50%, invoices by 90%, internal distribution by 50%, and paying occasions by 80%. These actions resulted in a process cost reduction of 50%. Option 3: Process Improvement Process improvement involves improving or streamlining part of a process rather than redesigning the entire process from start to finish. It often focuses on improving the tasks of the process rather than eradicating the delays between the tasks. Adding value at various points along the value chain is a key feature of process improvement. Value chain analysis looks at the organization as a large input/output system [17]. The inputs are resources brought into the organization, processed in some way to add value, and then marketed and sold as outputs. The chain is usually supplemented by after-sales service. Value can be added at various points throughout the chain, such as acquiring products or resources more efficiently. The costs associated with each step and task in the value chain are determined. The costs are then compared with the competitors’ costs and changes can be made to gain or sustain a competitive advantage.
Intranet administration applications
Administration Information systems development Web-based product development tracking system
Extranet for suppliers
Inbound logistics
Online vacant positions
Operations
Sales transactions Outbound logistics
Systems documentation on the Web
Online product catalog Marketing
Service
Aftersales service via Web
Human resource management Research & development
Figure 4.5 Uses of the Internet to add value to the value chain.
Internet used for information gathering
92
Internet Commerce Development
The Internet can be used to make changes and improvements in organizational value chains. Figure 4.5 shows a value chain in which Web applications can contribute at each stage. The value chain consists of primary and support activities. The primary activities are the key tasks and processes that return the most value. The secondary activities support the primary activities and do not provide the same level of returns. These include administration, research and development, human resource management, and information systems development. Web applications can contribute to both primary and secondary activities. The approach results in incremental improvements to the organization. A cosmetics company, Avon, decided to use the Internet to reach new customers. They enhanced the marketing function of the value chain by using online product catalogs. Their research told them that the Web site would reach new customers rather than persuade old customers to abandon their salespeople. The site was generally expected to boost Avon’s brand and this boost would help the representatives. Functional Level Strategy Strategy can be developed at the functional level of the organization to support the corporate strategy. For the marketing function, for example, models of the customer service life cycle and customer attitudes can be used to develop more detailed strategy [18]. The customer service life cycle has four major phases to describe the customer relationship: 1. The requirements phase is for assisting the customers in defining their needs. 2. The acquisition phase is for helping the user to acquire the product or service. 3. The ownership phase is for supporting the customer. 4. The retirement phase is used for helping the client to retire the product or service. These models can be used as an aid to explore the potential for worthwhile changes within the marketing function. The detailed design and implementation of strategies are covered in subsequent chapters of this book.
Strategic Planning and Internet Systems
93
References [1] Thompson, A. A., and A. J. Strickland III, Strategic Management: Concepts and Cases, 8th ed., Homewood, IL: Richard D. Irwin, 1995. [2] Rittenbruch, M., H. Kahler, and A. B. Cremers, “Supporting Cooperation in Virtual Organizations,” Proc. Int. Conf. Information Systems, Atlanta, GA: ICIS, 1998, pp. 30–39. [3] Staples, D. S., and P. Ratnasingham, “Trust: The Panacea of Virtual Management,” Proc. Int. Conf. Information Systems, Atlanta, GA: ICIS, 1998, pp. 128–146. [4] Ahuja, M. K., and K. M. Carley, “Network Structure in Virtual Organizations,” Journal of Computer-Mediated Communication, Vol. 3, No. 4, 1998. [5] Dembeck, C., “GM to Pump $1 Billion Into New E-commerce Unit: Develops Web Car,” E-Commerce Times, (http://ecommercetimes.com/news/articles). [6] “E-Commerce Success Story: Omaha Steaks,” E-Commerce Times, 1999 (http:// ecommercetimes.com). [7] Marx, A., “One Bank’s Blitz,” Internet World, 1999 (http://www.internetworld.com). [8] Rockwell, B., Using the Web to Compete in a Global Marketplace, New York: John Wiley & Sons, 1998. [9] Roberts, B., “24 Little Hours,” Internet World, 1999 (http://www.internetworld.com). [10] Kalin, S., “Conflict Resolution,” CIO WebBusiness Magazine, February 1, 1998 (http://www.cio.com/archive/webBusiness/020198_Sales_content.html). [11] Hammer, M., “Reengineering Work—Don’t Automate, Obliterate,” Harvard Business Rev., July–August 1990, pp. 104–112. [12] Hammer, M., and J. Champy, Reengineering the Corporation—A Manifesto for Business Revolution, London: Nicholas Brearley Publishing, 1993. [13] Manganelli, R. L., and S. P. Raspa, “Why Reengineering Has Failed,” Management Rev., 1995, pp. 39–44. [14] Talwar, R., “Reengineering—A Wonder Drug for the 90s,” in Business Process Reengineering, C. Coulson-Thomas, Ed., London: Kogan Page, 1996. [15] Martinson, M. G., and D. L. Revenaugh, “Reengineering Is Dead; Long Live Reengineering,” Int. J. Information Management, Vol. 17, No. 2, 1997, pp. 79–82. [16] Zachrisson, J., “The Swedish Method,” Computerworld, 1998 (http://www.computerworld.com). [17] Porter, M. E., Competitive Advantage: Creating and Sustaining Superior Performance, New York: Free Press, 1985. [18] McKeown, P., and R. Watson, R., Metamorphosis—A Guide to the World Wide Web and Electronic Commerce, New York: John Wiley & Sons, 1996.
This page intentionally blank
5 Systems Analysis for Internet Systems Introduction Systems analysis involves assessing the feasibility and scope of a system and determining the requirements. This chapter explains the various functional types of Internet systems with examples of requirements that need to be gathered. Techniques for capturing requirements are also explained. Meta-development strategies are discussed along with the various system stakeholders and users. The main objective of systems analysis, whether for more traditional information systems or for developing Internet applications, is to define the requirements of the proposed system. Although the overall objective may be the same, many of the aspects of performing systems analysis for Internet projects require a significantly different emphasis. Some people consider the analysis phase to be the most important phase of developing systems [1]. The reason given is that if the requirements are not adequately defined then there is little hope of designing an effective system. This view still holds true for developing Internet systems, although as mentioned in Chapter 4, analysis should support the objectives from the strategy phase. A large percentage of information systems (IS) development projects have been classed, to a greater or lesser extent, as failures. These are usually not outright failures in the sense of not delivering a system, but rather a failure to meet the requirements and support the business objectives. In the context of developing Internet systems, a failure to define the requirements of the new system adequately could result in a number of outcomes.
95
96
Internet Commerce Development
There are dangers associated with not capturing requirements. The system may never be implemented. This means a writing off of sunk costs in the system, but perhaps more significant is that future Web projects may have difficulty winning approval because of the stigma from the failed project. Another danger is that the system may not be used. If the system does not provide the resources and information needed by users, then it is unlikely they will use it. For example, a Web site providing internal company strategy information is unlikely to be read by customers or potential customers if it is not easy to read, in the right format, and relevant to them for making purchase or investment decisions. The system may cause a large number of problems such as the costly correction of errors. Even if it meets the user requirements in terms of quality of information content, it may not in terms of reliability of transaction processing or general performance.
Analysis of the Problems In the traditional life cycle approach to developing an information system, the study of the problems associated with the existing system is given considerable emphasis. However, in the development of Internet systems there is often no existing system to study and, hence, the importance of this phase is substantially reduced. Analyzing the current problems associated with a system or process is most relevant to the process reengineering and process change strategies discussed in Chapter 4 (although even in these two options it is not wise to focus too much on “looking for problems”). Western management styles have been based on reacting to problematic situations and correcting those situations. The role of managers therefore was to identify those problems. The emphasis was on uncovering problems and if, after some trying, none had been found, then the manager could sit back and relax until the problems surfaced more clearly. Unfortunately, this management style is one dimensional in that it does not foster a more creative and entrepreneurial mind-set where managers are looking for opportunities rather than focusing on the pursuit of problems. A more creative and entrepreneurial approach is required when changing and reengineering processes. A constant stream of new techniques, theories, and technology can be used creatively and innovatively to improve organizational performance. Simply solving problems that arise may not be enough to keep an organization competitive.
Systems Analysis for Internet Systems
97
How to Be Creative and Innovative in the Use of the Internet There is no simple answer to the question of how to be creative and innovative in terms of the Internet. Some people seem better at being creative than others, and some organizations appear more innovative than others do. However, there are approaches, techniques, and skills that can be used to develop a more creative and innovative environment. For organizations to be successful in today’s business world they must accept that what they did yesterday and today may not be appropriate for tomorrow. In other words, organizations must not only accept change but must be prepared to encourage radical change. Organizations need to value people with ideas and encourage brainstorming sessions. When expertise is not available internally, it should be brought in via new people or consultants. Organizations should become learning environments and should learn from the successes and failures of other organizations. Innovation and entrepreneurship should be rewarded. Risk taking should be encouraged and limited failures tolerated. Of course, organizations should invest in training and help staff experience new situations and new working environments.
Assessing Feasibility Feasibility studies involve assessing how valuable a system is to an organization. Feasibility can be assessed as to the usefulness of Internet commerce to the organization as a whole. This feasibility analysis can be carried out alongside the development of corporate strategy. However, each component of the Web site can be assessed in terms of its feasibility. For example, if the marketing section wants to add a major feature, a feasibility analysis should be conducted to assess the scope and complexity of the project and to determine the benefits. Feasibility can be assessed from three perspectives. All three factors are important. The first is operational feasibility, the second technical feasibility, and the third economic feasibility. Operational Feasibility The acceptability of a solution is a measure of the system’s operational feasibility. The system must work in practice. For example, if a system is developed for
98
Internet Commerce Development
the Internet but the Web interface is just too difficult to use, then it is not operationally feasible. Another aspect is the controls built into an application. If the security control measures within the system are inadequate, then the system fails operationally. Early on, many people were cautious about providing their credit card details over the Internet. Knowingly developing a system for a situation where the target group was of this mind would mean the system would fail operationally—unless of course the problem could be overcome by giving the customers certain assurances. A Web application may not succeed because it does not have management support or the users are not trained on how to use the system. An e-mail facility is of little use if staff do not know how to use it, and the same goes for an intranet application. Staff must be aware of how to access the intranet, how to navigate their way around the intranet application, and how to contribute data and information to the intranet. Technical Feasibility Technical feasibility is about assessing whether the application is possible to develop within reasonable limits of complexity. New technology is being developed and marketed continually. However, leading edge technology is generally not tried and tested. As a result, the risks involved might be too high to employ within a business organization where high reliability is required. Some solutions may require a great deal of expertise to complete. This level of expertise may not be available within the organization or even within the region. Without the skills the solution is not technically feasible to develop. Economic Feasibility The economic benefits of a system should outweigh the costs of developing and running the system. Some benefits may be difficult to quantify. For example, better public relations is a difficult aspect against which to put a monetary value. However, attempts should be made to try to quantify the improvement. Even the increase in sales orders via the Web is difficult to assess. It could be argued that some customers would seek the more traditional sales outlets if they did not have access to the Web option. In this case, a questionnaire survey asking how many would have bought the product or service through the alternative outlets had the Web option not been available should be conducted. The costs and benefits associated with developing an application should be determined (Table 5.1). The benefits and costs should be quantified and a 5-year budget developed. Net present value can be used as a way of bringing
Systems Analysis for Internet Systems
99
Table 5.1 Typical Costs and Benefits Associated With Developing Web Applications Costs
Benefits
Staff costs (development team, technical specialists, consultants, secretarial support) Computer equipment and software Training Paper, disks, furniture, and so on
More information Better quality information More sales Improved customer satisfaction Improved customer relations Greater staff satisfaction Improved company image and awareness Greater advertising revenue
future costs and benefits back to today’s value so as to be able to make a fair comparison. A positive figure may not be enough to allow the project to go ahead. If other types of investments or projects provide a greater return, then they might get the go-ahead in favor of the Web application.
Strategies and Analysis Approaches The techniques used for defining the requirements of an Internet project depend on the type of system and its functionality. Three fundamental types of Web systems exist: document publishing systems, basic interactive systems, and complex transaction systems. It is not always the case that Web projects intending to transform the organization require complex transaction systems. Useful information that is clearly and effectively presented with some simple database interactivity has the potential to make a major impact on a business. Document Publishing Systems Many intranet and Internet systems started off as document publishing systems. Intranets typically contain information on company policies and procedures, minutes of meetings, company and departmental strategy, and promotion application details. In fact, intranets have been used to present information that was once produced on paper and circulated around the organization. Although the emphasis of these systems is usually on text, graphics and multimedia objects can be incorporated to enhance the aesthetic appeal and to add functionality.
100
Internet Commerce Development
Internets often provide a mine of information to customers about the organization. They can be used to raise the corporate profile and image and to provide details about the products and services offered. The U.S. Social Security Site provides many documents that can be downloaded and includes a great deal of information online (Figure 5.1). The Internet can help an organization to define its brand or image if it is not already clearly focused. This is an example of where strategy leads to more detailed logical requirements. The physical design issues are left until the design phase. Basic Interactive Web Systems Simple interactive Web applications can be described as Web pages that are connected to a database for simple querying and a small amount of updating. These can be used, for example, for querying of a small database, telephone lists, and enrollments for university courses. Digital’s Web site provides access
Figure 5.1 U.S. Social Security Web site.
Systems Analysis for Internet Systems
101
to an online catalog of products, but is not a complex system (Figure 5.2). Via a browser on a client system, the user connects to the Web server on the Internet or intranet. The Web server accesses the database server and the data is sent back to the Web server where it is converted into HTML format and then sent to the client browser.
Complex Web Transaction Systems This is a more sophisticated type of application that includes complex transaction functions. The system allows insertion, deletion, and updating of records. The Web application connects to several corporate databases such as stock and order processing from the Web server via an application server (see Chapter 6 for more information). Skymall.com has a system where products can be searched for and purchased online, the order tracked, and the customer account checked (Figure 5.3).
Figure 5.2 Digital’s online catalog.
102
Internet Commerce Development
Figure 5.3 Skymall’s online purchasing system.
Requirements Analysis Techniques Information gathering techniques were briefly discussed in Chapter 2. A number of the available information gathering techniques are especially relevant to the process of defining the requirements of Web application projects. These methods are useful for projects where some degree of innovation can substantially improve the success of the system by providing a competitive edge for the organization. Web Requirements Sessions Using group communication techniques can speed up the process of defining the logical requirements for a Web application. The two group communication techniques used in the Internet Commerce Development Methodology are brainstorming and group requirements sessions. The first is used to define alternative ways of using Internet commerce in business, and the second is about determining the detailed requirements within a relatively short time frame.
Systems Analysis for Internet Systems
103
Brainstorming is a term used to describe the process of creative thinking. It can be used by a small team of up to eight key people to generate new approaches and ideas. A facilitator is required for brainstorming sessions. The facilitator tries to create a supportive environment for drawing out thoughts and ideas and may synthesize ideas, either verbally or by writing them on a board. A person who can write down notes is also useful for a brainstorming session so that the facilitator does not have to interrupt the flow of ideas in order to record what has been decided. Lateral thinking should be encouraged in the sessions as should the generation of radical or unconventional ideas. The use of brainstorming sessions would be a particularly useful activity when exploring options for transforming a business with the Internet. For example, a traditional bookstore might explore how the Internet could be used to sell more books. A Web site providing information on the latest books and bestsellers could be accessed by potential customers over a wide geographical area. A database of books could be maintained to provide stock information around the clock. Electronic mail lists could be developed to notify interested customers about new titles. Online chat groups could be used to develop online communities. For example, chat groups could be set up for science fiction discussions, philosophical fiction, and a range of other popular genres. Brainstorming could be used to define the online image that the business could present. This would be essential information for Web site designers. They would need to know if the image the company wants to present is that of, for example, low-key information provider, entertainment company, upmarket and specialized company, or mass market and low-cost company. The composition of such a brainstorming group would need to be thought out carefully. At least two marketing specialists, an information systems analyst and designer, a managing director, and several other representative senior managers would be an appropriate nucleus for the team. The goal of the session or sessions should be to explore alternative options for the online company image and to rank each option with the intention of adding some further detail to the ones that show the most promise. Group Requirements Sessions Group requirements sessions (GRSs) are similar in format to brainstorming sessions, but the emphasis is on obtaining detailed logical requirements for the system. For example, the types and number of documents to be managed on the Web, who will access them and how often, how often they will require updating, how many graphics will be included, and so on. For transaction systems, information needs to be gathered on the data required to make a decision by the customer and the fields of data required by the system. For these sessions
104
Internet Commerce Development
the composition of the group could differ significantly. Instead of including the most senior people in the organization who are responsible for strategic initiatives, people involved in operational activities can play a substantial role. The group size is allowed to increase from the maximum of 8 for brainstorming to 10 for GRS. Plan to hold up to three of these sessions, usually of half-day duration, over a 2-week period maximum. Some of the participants may change if other people have specialized knowledge. The actual number of sessions required will depend on the size and complexity of the system being developed. Well-run and managed GRSs can have a number of benefits: • The time taken to capture the requirements can be significantly
reduced. • Interaction among different functional groups in the organization can
help encourage the viewing of the system as an organizational resource. • The multifunctional team approach can improve communication
among user groups. • The quality and value of the system can be increased.
GRSs may not always be appropriate for developing Web applications. If the requirements can be well defined by several users and others have little or no knowledge of the type of application proposed, then it is better to conduct interviews individually or in small groups with the people concerned. Consultant Support Internet commerce emerged as a business paradigm during the late 1990s. It is not surprising, therefore, that many companies have little or no expertise in the area. In these cases, it is wise to hire that expertise to act in an advisory capacity. Consultants can provide an overview of the state of the art for Internet commerce and give immediate feedback on the feasibility of ideas that have been proposed. Of course, the difficulty associated with obtaining consultant support is finding a person or company that can provide the level of expertise required, ideally with some industry sector knowledge and examples. Learning From Others Gaining knowledge about how other organizations have used the Internet for commercial reasons can be advantageous for sparking discussions. This information can be discovered from industry and professional journals and magazines.
Systems Analysis for Internet Systems
105
Some leading accounting firms provide reports on best industry practices. Care must be taken not to blindly adopt methods chosen by other companies since they will have the competitive edge, having adopted the approach first. In addition, the method may not be suited to every company situation. Prototypes Prototypes can be developed to help in defining the requirements. In particular, the detailed information requirements of transaction and marketing systems can be trialed. The prototypes, however, will be used to a greater extent in the design phase of development.
Functional Categories of Internet Applications The type of functionality required by the Web application should be determined in the analysis phase. A number of different types of systems are explained next. Detailed requirements should be gathered. This would include such factors as the type of company image that is to be projected, the type of person the company is targeting, whether specially staged events will be used, and whether there will be direct marketing by e-mail. These are the who, why, where, and when type of questions. The more questions the analyst asks, the more likely the system sponsors will be to think about what they really require, and hence the system is more likely to have clearly defined aims. The system can later be evaluated against those aims. A company should make a decision whether to migrate their traditional brands online or to start a new online image that may be in a complementary business area. Columbia House, a music company, has a clear online mission: to sell music and entertainment products. However, not all companies can or should use the Internet to sell their products directly. Some companies prefer to use the Internet to promote their brand image and to generate interest in their product or service. Retail Transaction Systems Web development teams need to determine a number of requirements in relation to performing transactions on the Web. In addition, the organization should be aware of a number of factors, most importantly, that it is difficult to change people’s buying habits. For instance, remember the caution we mentioned earlier about people’s reluctance to provide credit card details over the Internet because of the fear of some sort of breach of security.
106
Internet Commerce Development
To increase the chances of a potential customer spending money online, several options should be discussed [2]. First, financial incentives can be offered to the consumer. The savings to be made by selling online can be partly passed on to the customer. These can result from bypassing distributors and by decreasing reliance on expensive retail premises. Airline companies, for example, have auctioned seats off rather than let the seats go vacant. Second, it is convenient to shop from your home or office. Costs in terms of time and money are associated with shopping in the traditional way. Books, CDs, and wine, for example, can all be bought easily and mailed or delivered to your door. Finally, the third factor is adding value to the transaction. There are numerous ways to add value, but a core feature is providing information to the potential customer, usually free of charge. This can take the form of providing market analysis for a share investment site, destination information and graphics for a travel agency site, or weather reports and tide information for a fishing tackle site. Marketing and Promotion Systems An organization that develops a Web site automatically gets involved in publishing and promotions. A site needs to be promoted to attract potential customers. Just how this is accomplished depends on what is suitable for the organization and the imagination and flair that is put into it. Specially staged events can be used to attract interest in a Web site. They can take many forms and act to promote a product or service. The event could be something as simple as a raffle, where Internet surfers over a period of time provide their contact details and then the raffle is drawn and the winner notified by e-mail. The e-mail addresses could also be useful for building an e-mail list. A grand master chess player playing against chess players worldwide was a special event used by one company. The most common move made by players across the globe was chosen for each move. Both the grand master and the Internet users were given a fixed time to input their next move. The chess board pieces updated in real time. A celebrity answering questions about his or her latest CD could be promoted as an event to coincide with the CD’s release. An organization must decide if events will be periodic or used on an ad hoc basis. Advertising through the use of banners on other popular sites is a method of drawing potential customers to a Web site. Web advertising agencies have started to offer this service. Of course, simple links from other sites can have the same effect, especially if the products or services are complementary. Electronic mail can be used to inform people of special offers in a relatively low-cost manner. Insight Computer has a user database of 115,000
Systems Analysis for Internet Systems
107
people. A travel agency, travel.com.au, e-mails special offers around Australia. These provide information on last minute bargains and discounted specials. After-Sales Support Systems, Customer Service Systems, and Inquiry Systems The Web can be used to provide after-sales support to customers, improve customer service, and provide answers to general inquiries. For example, an after-sales support system can include details about how to care for the product that has been purchased and accessories for the product. A help e-mail line can be provided, but the organization must dedicate adequate resources to processing of the e-mail. Many organizations provide an e-mail address, but never have anyone respond to the e-mails. This obviously leaves a very bad impression with the customer. Public Relations Systems The Internet is ideal for public relations campaigns. Information can be presented in many ways and has a longer life than advertisements in newspapers and on television. However, in a cluttered environment such as the Web, great effort must be made to stand out from the crowd. The important factor is to target the desired audience. Tactics have to be used to attract interest to the site or the e-mail address. This may require using key words, catchy titles, or, on occasion, outrageousness. BHP is a large Australian mining company. It is using its Web site to promote the company and its image and to inform people that the company is environmentally aware (Figure 5.4).
Transformation A general approach and outline for business transformation should have been developed in the strategic planning phase. The analysis phase requires further brainstorming and GRSs to add detail to the functional requirements. Within this framework a number of factors should be remembered [3]. There should be a strong commitment to adding value for customers when redesigning processes. This often means looking at the business processes from a customer perspective. There should be a clean slate approach to the transformation. Existing organizational structures may detract from new developments by diverting attention away from the customer. The aim should be to achieve radical transformation and significant increases in performance. A holistic approach is required so that the new system is not hampered in any way.
108
Internet Commerce Development
Figure 5.4 Promotion and public relations the BHP way.
Transformation requires a cultural change within an organization, one where the employees are empowered and trusted. Only with this change in mind-set can the radical leaps in productivity be achieved. An example of business transformation is travel.com.au, the travel agency mentioned earlier. This travel agency has been radically transformed from the traditional type of travel agency (Figure 5.5). It uses its Web site and e-mail to tap into a much wider market than previously.
Process Reengineering Process reengineering involves the redesign of an entire process. The analyst must use brainstorming techniques and GRSs to define the functional requirements. The emphasis should again be on adding value for the customer. It is important to clarify how and where the process interfaces with other processes in the organization. For example, a company may decide to add a new public
Systems Analysis for Internet Systems
109
Figure 5.5 The travel.com.au Web site.
relations process via the Web or create an online catalog for people to view products.
Process Changes or Enhancements How the process changes will influence other parts of the process must be determined. The analyst needs to ensure that the changes will not adversely affect other parts of the process. Manchester United has developed a Web site where club merchandise can be purchased. These sales supplement the already large sales from their club shop (Figure 5.6).
Meta-Development Strategies and Framework The strategy used to develop the Web resource in an organization influences the role of the project team members and analysts. The meta-development
110
Internet Commerce Development
Figure 5.6 Enhancing current sales with online selling.
strategies are discussed next along with how the approaches affect the gathering of requirements. Plan the Entire Site One approach is to plan the entire site and then strictly regulate its distributed development. In this approach, significant effort is put into the planning of the site. However, the aim is to help (and regulate) the users in the development of the content. This strategy would be used where control of the Web content and design is important but where it would be too costly or too difficult because of a lack of specialist knowledge to pay a central team of developers to gather the requirements and build the site. The emphasis is on making sure that the content is appropriate and aligned to the Web strategy. The aim with the design is to present a uniform interface to the outside world. The analysts involved in the project must make sure that the content and design guidelines are clearly communicated. This can be done through e-mail, Web pages, meetings, and paper-based reports. Training of users in Web page
Systems Analysis for Internet Systems
111
design and development is required. There may be people at various levels of the organization who are responsible for overseeing the development of their business unit’s Web neighborhood. These people must meet periodically to discuss problems and swap ideas. The mechanism for evaluating Web page content and design has to be put into place. For instance, all pages may have to be evaluated by a central team before they can be added to the Web site. Plan the Core of the Web Site Another option is to plan the core of the Web site (using either outsourcing or in-house talent) and then make no further changes. This type of Web site is typically restricted in the number of pages and its functionality. Hence, only a central core of information is ever included in the Web site. The organization requires strict regulation over content and design. It is also usually trying to communicate a clear and simple message. By not allowing the Web site to grow organically, the overhead involved in training people about Web site development is avoided as is the overhead involved in evaluating and monitoring Web site content and design. These sites are often developed (and sometimes maintained) by outside contractors. If the site is developed by outside contractors, then designated staff within the client organization must develop a working relationship with them. The contractors will need to gather content, functionality, and requirements and get feedback on design issues. Of course, it is important to choose a suitable contractor for the development (see the section in this chapter on acquiring and working with contractors). The maintenance of the site needs to be resolved at the outset. If changes need to be made quickly and frequently, then it will probably be worthwhile to develop in-house expertise. The cost and time delays involved with contractors when making minor changes to the Web site can be a problem. Plan and Centrally Develop the Core of the Web Site Some companies plan and centrally develop the core of the Web site and then let user departments develop their own neighborhoods. The core of the site may include general-purpose information for customers or may try to project a key image or theme. The other business units, however, may have quite different objectives that they wish to implement. In this case, it might be better to let the business units develop their own portion of the Web site and provide links from the core pages. The benefits of this approach are that the business units have the content knowledge and are accountable for what they produce. They would typically
112
Internet Commerce Development
be responsible for updating their own section. Letting the user departments go it alone will usually mean that the site as a whole will not have the same “look and feel” about it. The central team should therefore assess how important this issue is before deciding on such a strategy. The team responsible for the overall project will need to give some initial guidance and training to the business units before they make a start on developing their own neighborhood. A similar approach is to plan and develop the core of the Web site and then loosely regulate and manage the development of the business units’ efforts to complete the site. Regulation may involve providing general guidelines on appropriate content and flexible design guidelines to avoid the extremes of inappropriate content and poor design. The analyst must concentrate on gathering the requirements for the core of the site and provide support for the rest of the organization. Allow Unregulated Development of the Entire Web Site Allowing unregulated development of an entire Web site is an extreme approach that is considered undesirable in most cases. The approach could be adopted for a short period in the hope that some structure may organically emerge. Without some minimum guidelines this may not happen. If the Web site became unmanageable, the time and cost expended in the process would have to be written off. Inappropriate content and design that adversely affected the organization could become a real issue. Although it is a high-risk approach, it could be used as an intranet development method where information is only accessed internally. The method could allow users to “adopt” the intranet as their own resource and could lead to innovative uses of the resource. Plan the Entire Web Site, Develop the Core, and Then Incrementally Develop the Rest of the Site Where control over content, functionality, and design is important but where resources are not available to complete the Web site over a short period then the site could be developed stage by stage by a central team. The analysts involved would need to decide the priorities attached to each section or component of the site and inform user departments and business units about these. Analysts should plan group requirements sessions with each business unit in advance, so each unit can release key people without difficulty.
Systems Analysis for Internet Systems
113
Defining the Users Many different groups of people interact with Web sites. Understanding their characteristics and the roles these groups play is helpful in defining the requirements for a Web application. The more detail that can be added to the development of user profiles, the more likely the completed system will be of use. For example, many different types of customers may interact with a business. Understanding how they differ should go a long way toward understanding how their needs can be serviced. 1. Browser. The Web is an environment where lots of people will just stumble on a Web site without any intention of making a purchase. They may be just browsing, which is similar to window shopping in a shopping mall or high street. This type of user will just pass through quickly if the site is not appealing or easy to navigate. If the site is memorable, this person may return at a later date to look again or even make a purchase. 2. Buyer. This type of person has come to the site to make a purchase. They have some knowledge about the item required. A clear, welldesigned system will help the customer complete the transaction. 3. Member and nonmember customers. In some organizations, customers must be members. This may give them special privileges or discounts that are not open to nonmembers. Nonmembers must complete an application form and apply for membership. 4. Dissatisfied customers. There should be some way for customers to make a complaint. This can be done by providing customer service contact details on the Web site. 5. Recipient. The person who buys the goods may not be the same as the person who receives the goods. This must be taken into account in the information system. 6. Suppliers. Suppliers may access an extranet to determine which products require supplying. 7. Internal users. Many people within an organization interact with the Web site. There are systems developers such as the analysts who define the requirements of the system. Designers decide on the layout and design features of the system. There are content specialists who provide the text for the system. Then there are those who have the technical expertise to implement the system. If the system is
114
Internet Commerce Development
connected to corporate databases, then the database administrator will interact with the Web interface. Customer service representatives will also interact with the Internet as well as marketing and sales staff. Senior management will be involved more in developing the Web site strategy. Of course, if there is an intranet available, then potentially anyone in the company may use the system.
Working Across Departments Because Web applications are typically collaborative projects, the analyst will have to work with people from different departments within the organization. The system should be seen as an organizational resource, and the analyst should try to foster this ethos by not referring to it as “marketing’s system,” for example. Meetings should be held on neutral ground rather than always being held in one department’s territory. Organizational politics can be a powerful force that can slow the project or have an adverse influence on its success. The way to alleviate factional interests is to stress the benefits to all concerned parties while at the same time explaining changes in work practices.
Working Across Organizations In the development of an extranet the analyst will have to work with other organizations. All requirements will need to be defined in detail. The development process will be under scrutiny from these external organizations and therefore the project needs to be efficiently and effectively managed. Representatives from the supplier organizations should be included in the group requirements sessions, and the suppliers should be presented with copies of reports and project time lines. The suppliers should trial any prototypes and be fully involved in systems testing and evaluation.
Working With Different Cultures and Languages If the product or service is to be promoted to people of different linguistic backgrounds, then alternative translations of Web content should be provided. Tourism-related sites, in particular those intended to appeal to overseas tourists, should provide at least translations of the languages of the key tourist
Systems Analysis for Internet Systems
115
nationalities. The Australian National Tourism Site provides translations into a number of languages, including Japanese. The developers may also have to consider alternative languages for local residents who cannot read the national language. Although the Internet may appear to be making the world a “global village,” many cultural differences are still to be found among people of different nationalities. Religious, economic, political, legislative, and social differences dictate what is and is not appropriate Web content. Muslim countries usually have very conservative expectations in terms of how women are portrayed in advertisements. For many years, the French restricted travel advertising believing it had a negative impact on their domestic tourism revenue. Some restrictions on advertising have an overt or covert political message. Some countries restrict the advertising of tobacco. Social differences relate to a culture’s values, social norms, and traditions.
Modeling Techniques for Internet Systems There are few specialized modeling techniques for developing Internet commerce systems. Data flow diagrams and entity relationship diagrams (both of which were discussed in an earlier chapter) can be developed for more complex transaction systems. For example, a data flow diagram could easily describe the processes involved when a customer completes an order and various databases are updated (Figure 5.7). Most of the order processing could be software driven, as in this example, and could happen very quickly.
Project Management and Documentation The documentation of Internet systems is very important. The development and maintenance tasks are made much harder if the documentation is inadequate. Good documentation is a feature of good project management. Documentation should include the system models and reports. These can be developed in HTML and Java on the Web and accessed by the project team. 1. Reports. These include reports of the feasibility of the project, requirements, project plan, and implementation issues. 2. Data flow diagrams. These can be completed for the logical design and the physical design of the application, if the application is transaction based.
116
Internet Commerce Development
Keyboard: order details Customer Customer details Customer file Web page: check/store order
Order error message
Order details Order file Backorder details
Order details Web page info
Customer details
Backorder details
Software: process order
Backorders file Delivery note
Customer file E-mail invoice
Customer
Figure 5.7 Processing an order data flow diagram.
3. Entity relationship diagram. If the system links to files and databases, then an entity relationship diagram needs to be drawn. 4. Minutes of meetings. The minutes provide a record and audit trail for the project. 5. Project plans. The project plan provides a timescale for various components of the project and allocates responsibility for the tasks that have to be completed.
Acquiring and Working With Consultants and Vendors Acquiring a good Web consultant requires some careful consideration. If the expertise and resources do not exist within the organization, then outside assistance is required to develop the Web site. Although many organizations offer their services in relation to Web development, very few have been operating longer than 3 years. The following paragraphs examine some key factors that should be considered when choosing a Web consultant [4]. The organization should become as knowledgeable about the Web as it can. This may include employing someone full time to act as a main contact
Systems Analysis for Internet Systems
117
between the organization and the consulting firm. The organization requesting a Web site should be clear on what it requires. All outdated information and brochures should be disposed of just in case the information ends up on the Web site. A request for proposals (RFP) should be developed that provides company background, the products and services offered, the functionality and volume of information, the time line, the in-house contacts, and what the company is hoping to gain from the Web site. It is worth visiting the Web consultants at their premises. This will tell you something about the size of the company, whether they look organized, and the type of staff they employ. Meet some of the key people involved in your project. You may even ask to look at sites they have developed. A good Web consultant will ask you difficult questions about your strategy rather than just try to confuse you with jargon. You must also ask if they are planning to outsource any of the project because this may mean you are not getting the quality of service you expected. The best way to find this is out is by asking for a full listing of the project team. If the Web consultancy is not financially stable it might try to cut corners on the project or at the worst become insolvent. Make sure that the company is not undercutting just to get the work. Collect several quotes and obtain a detailed breakdown for each stage of the project. The more experience the Web consultants have the better. They may only have experience on smaller projects and may be stretched in terms of resources on a larger project. A contract should be developed that stipulates what will be developed in detail, a project plan, and performance requirements. Following these tips does not guarantee that a successful system will eventually result, but it will increase the probability of that happening. Being a Good Client Designate roles for internal people to help liaison with the Web consultants. These can include internal project leader, associate project leader, and team members from various departments. Make sure that the content material is supplied on time and in the correct format because this is one of the biggest problems that Web consultants face. The main theme of Chapter 4 was developing a Web strategy. A company should be clear on its strategy even if it is outsourcing the development. The return on investment should be identified at the start of the project. It might be to raise the company profile, to provide better after-sales service, or to increase the number of orders.
118
Internet Commerce Development
References [1]
Whitten, J. L., L. D. Bentley, and W. M. Barlow, Systems Analysis and Design Methods, Homewood, IL: Richard D. Irwin, 1994.
[2]
Chase, L., Internet World: Essential Business Tactics for the Net, New York: John Wiley & Sons, 1998.
[3]
Talwar, R., “Reengineering—A Wonder Drug for the 90s,” in Business Process Reengineering, C. Coulson-Thomas, ed., London: Kogan Page, 1996.
[4]
Kalin, S., “Good Help Is Hard to Find,” CIO WebBusiness Magazine, February 1, 1998 (http://www.cio.com/archive/webbusiness/060198_consult_content.html).
6 Designing Internet Systems Introduction Designing an Internet commerce system usually involves more than just developing Web pages with appropriate content. Today, organizations are using the Web as a unifying portal to tie their disparate corporate systems together. In a sense, the organizational expectations in relation to information technology (IT) have not changed: to develop flexible systems that empower the organization by improving productivity [1]. Hence, the development of Web systems is an opportunity to examine the entire IT/IS infrastructure to determine how and where improvements can be made. Developing a Web site in an organization involves decisions related to the hardware and software for the client and Web server. If the system is to perform transactions that access the corporate databases, then an applications server and database server will be needed. The design of the site’s Web pages requires companies to make decisions about the design framework, the navigation mechanism, and the detailed layout of Web pages.
Client /Server Technology Infrastructure It is worth our while to take a little time to understand some basic concepts related to client/server architecture. Although Web server architectures have their own terminology, many of the underlying concepts and principles are the same as in client/server systems. There are two main types of client/server architecture: two-tier and three-tier (Figures 6.1 and 6.2). Two-tier client/server 119
120
Client
Internet Commerce Development
Database server
Database
Figure 6.1 Two-tier client/server architecture.
systems comprise front-end client and back-end server. The client workstation runs the graphical user interface and the application. The back-end holds the database and provides the front-end with the data. However, this scenario does not scale up well. Once the number of users becomes large, there is too much traffic between the client, where most of the business logic resides, and the database server. In three-tier systems the business logic is taken out of the client and put into a separate server, which is known as the application server. Sometimes the application logic may be distributed across the client, application server, and database server.
Web Technology Infrastructure The Web technology infrastructure consists of a range of components. The key components are discussed in the following sections. TCP/IP Network The Transmission Control Protocol/Internet Protocol (TCP/IP) must be implemented as the standard across the corporate networks. TCP/IP is available for most platforms including UNIX, Windows NT, Windows 95, and Macintosh.
Client
Application server
Figure 6.2 Three-tier client/server architecture.
Database server
Database
Designing Internet Systems
121
Web Server Platform The most common Web server platforms are UNIX (Sun, IBM, HP, or Digital), Windows NT (Intel, Alpha, or RISC-based machines), and Macintosh. Of course, many factors must be considered when choosing a hardware platform. The performance capabilities of the computer in terms of the speed of the processor, the amount of random access memory, and disk storage need to be considered. The reputation of the manufacturer for hardware reliability may be a consideration because the server will be running 24 hours a day, 365 days a year. If problems do arise that are hardware and software related, then good quality support is important. The hardware may need faults diagnosed and eventual replacement. Service companies may pick up the hardware, repair it, and return it if it is still under warranty. The level of compatibility with existing hardware may be a factor for consideration. However, the operating systems cannot be divorced from the hardware platform and so this is just as important a factor. The choice of server platform could also be influenced by the level of expertise within the organization. There may be expertise, for example, in Windows NT software but very little in UNIX. Web Server Software Web server software runs on a computer connected to the Internet. The server software takes requests from Web browsers for HTML documents, locates the document, and returns it to the browser that requested it. Common Web server software includes Apache, CERN, Microsoft IIS, NCSA, and Netscape. The hardware will determine which software options are a possibility. Much the same factors that are considered for hardware must be considered for software, including performance, scalability, security, reliability, level of support, level of compatibility, level of expertise, content and site management features, Web development support, and quality of documentation. Web servers perform four main functions: (1) serving Web pages, (2) running gateway programs and returning their output, (3) controlling access to the server, and (4) monitoring and logging server access statistics. Web Browser The choice of Web browser will be influenced by the hardware and operating system platforms within the organization. If several hardware platforms are used, then the browser chosen should be available on all platforms. It is recommended that one browser be chosen as the standard because this will make support and training much easier.
122
Internet Commerce Development
If the organization does support different browsers, it is important to test any Web pages developed in all of them. This is because there are differences in the way a page is presented by different browsers. Web Integrated Development Tools A range of integrated development tools exists that utilize the Java programming language. They are rapid application development tools that have been created to develop Web-based applications in Java. The tools speed development by providing a visual programming interface that hides some of the complexity of developing low-level components and interface objects. Java integrated development tools or environments (IDEs), in addition to being used for developing Web-based applications in the form of Java Applets, can be used to develop stand-alone applications that do not require a browser. Chapter 7 explains the role of Java in developing Web-based applications along with other scripting languages for client-side applications development. Three of the main Java integrated development tools are described next. IBM’s VisualAge for Java IBM’s VisualAge for Java is described as a rapid application development tool for building Java-compatible applications, applets, and JavaBean components. There are two main versions: the Professional Edition for developing applications, and the Enterprise Edition, which has modules for connecting to databases. Here are some of the features of VisualAge: • An integrated development environment with visual programming
support for creating Java applets; • Wizards for string externalization to assist in building multilingual
applications; • Ability to import GUIs that have been developed in other Java devel-
opment environments; • JavaBeans for easy access to databases; • HTML documentation support.
Borland JBuilder JBuilder includes visual tools and reusable components for developing platform-independent applications, servlets, and applets. Servlets are standard Web server extensions that can be used to expand the functionality of a Web
Designing Internet Systems
123
server. Borland relies on the Java 2 standards set out by Sun Microsystems. It comes in three versions: Standard, Professional, and Enterprise. Sun’s Java WorkshopTM Java WorkshopTM is a visual development environment that offers a tool set for building Java applets, applications, and JavaBeansTM architecture-based components. It provides a graphical development environment to speed development. The Project Manager is a file management utility. The Source Editor provides syntax highlighting, a file picklist, automatic indentation, and key emulation, all of which aid the program development process. The Build Manager is the compiler, which provides automatic error location support for improved debugging. The Graphical Debugger includes controls such as conditional and counted breakpoints, expression and variable evaluation, multithreading support, and visual control of program execution to aid the debugging process. Version control is incorporated to support team development. Application performance can be fine-tuned with the Java Workshop Profiler. Wizards are available to help in the development of JavaBeansTM architecture-based components, which are required when connecting to a database server. Web Database Application Development Tools Some of the integrated development tools incorporate the modules to connect to various databases. However, they are classed as more general Web development tools. Specialized Web database development tools have been created to cater specifically to the problems of connecting to databases from Web servers. However, it could be argued that if a company is considering developing Webbased applications, then it may as well invest in a tool that supports connection to a database. These are termed Java enterprise development tools (EDT). The factors to consider when selecting a Java EDT are shown in Table 6.1. Several issues must be resolved when connecting to a Web database. Whereas each ordinary Web page request is processed individually as a completely separate request, this is not the case with database requests. A database request needs to maintain session information or information about the state of the transaction back and forth to the user. This information is embedded in the HTML code. Some systems need to handle a large number of concurrent transactions. Some tools can spread the requests over several servers. Common Gateway Interface Web servers interact with database servers using the Common Gateway Interface (CGI) method. When a request is made that requires data from the database, a
124
Internet Commerce Development
Table 6.1 Considerations in Selecting Enterprise Java Tool Factor
Significance
Support for recent versions of Java
Java 2 has added functionality for enterprise development and hence it is important for the EDT to be compatible with this recent functionality.
Supports standard Java
Some IDE and EDT tools have proprietary extensions and class libraries that are not part of Sun’s standard Java. This means there is a danger of being locked into a particular IDE product and vendor.
Version compatibility
When the Java platform is upgraded, the IDE should be able to operate with that.
Database access
IDEs, especially the enterprise versions, come with the code to connect to databases. This saves time and the acquisition of expertise to do the task.
CORBA support
The IDE should support the CORBA object request broker standards.
Component development
The IDE should facilitate the development of reusable components.
CGI script is invoked on the Web server. Data is retrieved from the database and then formatted into HTML code. Form-based queries are slightly more complex than document-based queries. A Web page with a form is an HTML file that is on the server. In this respect, there is nothing special about how the Web server or the client browser handles the page. However, when the form has been completed and submitted, the browser sends the name of a CGI script built into the HTML code for the page for the Web server to run. The data input to the form, of course, is also sent to the Web server. The Web server then passes the data to the CGI script. This process is illustrated in Figure 6.3. Bridging Legacy Systems to the Web Some organizations are choosing to link their legacy systems to Web interfaces. The advantages of doing this are: • A Web interface may be less expensive to develop than rewriting the
legacy system.
Designing Internet Systems
Web page request
125
Data and CGI script
Form returned
Web server
CGI program
Data and name of CGI script
Confirmation to client browser
Figure 6.3 Form-based processing.
• The opportunity may arise to exploit new business opportunities by
opening up the legacy systems to the Internet. • Extra functionality may be added at the Web interface rather than making costly changes to the legacy systems.
Web Database Application Design In Chapter 5, the semiphysical characteristics of Web systems were briefly presented. These were document publishing systems, simple database systems, and complex database systems. The latter is a Web interface that connects to several corporate databases for complex transactions. These systems are made up of the Web browser (client), the Web server, and the application server, which deals with the processing logic and accesses the database server (Figure 6.4).
Browser
Web server
Application server
Figure 6.4 Web architecture for complex transactions.
Database server
Database
126
Internet Commerce Development
Development Tools Case Studies MicroAge (http://www.software.ibm.com/casestudies) MicroAge in Toronto, Canada, is a technology product distribution company. It has developed systems in Java for the Internet that allow it to receive and process orders directly from customers. Once an order is accepted, the system sets up a schedule and tracks each step using a bar-coding scanning system. This means the customer can monitor the status of the order online. In addition, employees of MicroAge are automatically notified of delays and can respond to customer telephone inquiries with real-time order and delivery status. The system was developed in a graphical development environment with Java (VisualAge for Java by IBM). The reasons given for choosing this product were that it offered an enterprise-wide perspective. The product also was considered to have a solid class library that was platform independent. The benefits of extending the system to the Web have been significant. The time taken from order capture to delivery has been reduced by 25%. Processing costs per unit have decreased by 30%. A 100% increase in orders has been seen annually since the system was installed with only a 40% increase in staff. CompHealth (http://www.software.ibm.com/casestudies) In the United States, health professionals are required to have their credentials verified every 2 years. In the past, it was a time-consuming process that could take 2 weeks just to bring together the paperwork. CompHealth has developed a Web application called Apply.Net to move as much of the processing online as possible. The medical professionals submit their information online via the Internet to CompHealth and the details are verified. This means a process that used to take 2 weeks is completed in a few hours. There is no rekeying of information and the accuracy and completeness of the application is improved. The Java development tool used to implement Apply.Net was selected for a number of reasons: • It supported the current system platforms such as Windows NT,
AS/400, DB2, and Lotus Domino. • It encouraged and supported team development by providing a common repository and strong versioning control. • It is an object-oriented development language, which meant the organization had to make the shift to the new paradigm. In the future this should make maintenance easier as the system is based on objects. The interface objects of Apply.Net have been developed separately
Designing Internet Systems
127
from the objects that access the data. Any changes to back-end connectivity objects should not require changes to the user interface. • The developers of the Java tool provided strong technical support in the form of libraries of routines, especially for connecting with the corporate databases from the Web interface. This radically reduced development time. Design Models Web site models have been classified according to seven design structures [2]: 1. The poster/billboard model is basically just a small amount of information about the company and an e-mail address. It raises the profile of the company by having an Internet presence and the effect is like a company poster. 2. The online Yellow Pages model is a menu system with a hierarchy of information. 3. The cyber brochure model is more sophisticated still and looks like an online brochure. 4. The virtual storefront model has a transaction engine and is used for ordering and sales. 5. The subscription model is akin to an online magazine. 6. The advertising model is a site that is trying to raise revenue through advertising. Examples are the search engines that attract large numbers of people and have lots of ads. 7. The 3.5.7 model is a multifunctional Web site that includes, for example, transaction facilities, marketing, public relations, and aftersales support. Web Site Design Working From the Requirements The detailed design of a Web site is guided to a large extent by the requirements that should have been defined in the analysis phase of the Internet Commerce Development Methodology. For the Web page design, the characteristics of the users, the functional requirements of the company, the company image that is required to be communicated, and the marketing strategies desired should all have been discussed. That is not to say that changes cannot be made to the requirements, but that the designers must have a clear
128
Internet Commerce Development
understanding of the key system issues and objectives so that appropriate designs can be created. Principles of Good Design Designing effective Web interfaces is both an art and a science. It is an art or a craft because a certain amount of creativity is sometimes required to develop Web systems that are functional yet aesthetically pleasing to look at and work with. At times, fashion and fun play a vital role in the design; a scientific, engineered, or more purely rational approach would not achieve the same level of success. However, people process and interpret information according to cognitive principles and adhering to these helps the designer to develop systems that communicate effectively. So a more scientific or engineered approach provides a strong underlying set of principles that can serve as a framework for design. This and the following sections examine important design issues that need to be considered when designing Web applications. Human computer interaction (HCI) is an important field within the IS/IT disciplines. It involves the theory and practice of how users interact with computer systems. It draws on cognitive psychology for principles on how people interpret information. Designing systems according to these principles generally leads to systems that have a higher level of usability. Cognitive Psychology Research in cognitive psychology tells us that in most situations humans are easily cognitively overloaded. For example, people find it difficult to remember much more than seven, plus or minus two, chunks of information. These could be instructions or digits or key words. Hence, designers should not expect users to remember a great deal of information or data from one Web page to another; instead, this information should be repeated on each screen if it is important. The brain processes information serially. This means that developing systems that have competing features is likely to distract the user from acquiring necessary information. Generally speaking, therefore, simplicity of design and layout is desirable for improving the degree of information communicated. The designer works with Web pages that are displayed in a browser. Each Web page provides a design space where text, graphics, animation, and images can be arranged to maximum effect. Layout Space can be used on a Web page to separate features, whether text or graphics, and thereby communicate meaning and relevance without using lines or borders that would add to the cognitive load on the user. The techniques of using space and position in design are evident, of course, in newspapers, magazines,
Designing Internet Systems
129
and books. Using space and screen real estate wisely creates a design that is both simple and effective (Figure 6.5). Consistency This is an easy principle to understand but one that is often forgotten. Consistency relates to the uniform application of terms or key words, the use of icons and graphics, the position of Web page features such as menu items, the use of color, and so on. The designer should work out a design strategy along with the details and stick to it! Users will then find it easier to navigate around the Web site. Flow Generally, people are used to reading top to bottom and left to right. What does this mean for Web designers? It is important to know how text should be arranged on the Web page for ease of reading. For example, examine the two sentences in Figure 6.6. The text on the right is definitely quicker and easier to read with its left-to-right orientation.
Figure 6.5 Home page showing plenty of white space.
130
Internet Commerce Development
This is the first sentence. This is the second sentence. This is the third and final sentence.
This is the first sentence. This is the second sentence. This is the third and final sentence.
Figure 6.6 Text left-to-right principle.
Equally, designers need to remember the top-to-bottom rule (Figure 6.7). The desire to create distinctive Web sites has led many developers to ignore cognitive principles. The resulting applications are then often distinctive for the wrong reasons. Zoning Browser windows or screens can be divided into zones. These are areas of the screen used for certain functions. For example, Figure 6.8 shows zones for the menu, advertisements, title, and the bulk of the screen area for displaying other information. Many different zone layouts can be used to great effect. The main advantage of zoning is that one page should have a similar structure to other pages and hence provide a consistent framework for the designer and the user. Grouping Logically related items should be grouped together. In this respect proximity conveys meaning. This could apply, for example, to links, icons, and menu items. Text The size of the text denotes its significance. For example, the heading for a Web page is usually larger than the other text on the page. A problem for designers is that HTML is so limited in terms of text sizes and fonts. An additional problem This is the third and final sentence. This is the second sentence. This is the first sentence. Figure 6.7 Text top-to-bottom principle.
This is the first sentence This is the second sentence. This is the third and final sentence.
Designing Internet Systems
131
associated with headings in HTML is that they leave too much space below. Hence, many designers use a text heading that has been created in a graphics package and saved as a GIF file. Headings can then be developed along the lines of a logo and their effect can contribute to the image branding of the site. Subheadings can also be developed as GIFs or can be left in bold with no space following. Two levels of headings are usually enough for most designs; if you need another level you can always go to another page. Horizontal lines in any form to separate areas of the Web page should be avoided because they become noise, adding to the cognitive load without conveying useful information. A blank line is preferable in most cases. Margins are effective for making the text stand out on the page. Tables are used to do this because there is no margin function in HTML. The first column of the table is left blank, thus creating the margin effect. Long lines of text on a screen make reading difficult for the user. Approximately 10 to 12 words per line is a suitable line length to aim for, although much of the control, in terms of window size and font size, is determined by the user’s browser. Multiple columns of text should be avoided. It is a great deal of work for little reward because the user must scroll back up the window to see the next column.
Figure 6.8 A page with clear zoning.
132
Internet Commerce Development
Alternative text sizes can be used to capture the user’s attention (Figure 6.9). Highlighting in bold or the use of a bright color can have the same effect. Color Inexperienced designers often make the mistake of designing Web pages using many different colors. It results in what is known as the “Christmas tree effect.” Good design should not rely primarily on the use of different colors. Usually it is better to design in black and white to focus on layout and other features. The color can be built in where needed afterwards. When more than four or five colors are used in any Web page, there is a tendency to increase the cognitive load on the user. A color scheme should be chosen that adds value to the design but does not become the overriding feature. Certain combinations of colors go well together; others contrast and are not aesthetically pleasing to the eye. Blue and dull white go together well, but purple and blue do not. Background and foreground colors need to be carefully chosen so that the text is easy to read. The background should not be too bright, such as a bright white, because it can strain the eye, but a dull white is a common background because black text shows up well against it. Graphics and Use of Icons Icons are used extensively in Web page design for a number of reasons. An icon can actually incorporate and convey a lot of information. The designer can use location (on the screen), color, space between icons, and the size, interior, and shape of icons to convey information to the user. According to Lodding [3], three types of icons can be distinguished by their design and function (Table 6.2). An icon relates to an idea or concept on the basis of resemblance (picture), by analogy (symbol), or by being selected from a previously defined and learned group of arbitrarily designed images (sign). An iconic system is a structured set of related icons, and an iconic sentence is a spatial arrangement of icons from an iconic system. A visual language is a set of iconic sentences constructed with syntax and semantics [4].
7 ways to
increase your
WEALTH Figure 6.9 Varying text size can attract attention.
Designing Internet Systems
133
Table 6.2 Icon Types Design
Function
Representational
Picture
Abstract
Symbol
Arbitrary
Sign
Some problems and challenges have been documented in terms of iconic systems. Not all tasks can be easily represented by an icon. Ideally, the purpose of an icon should be communicated intuitively. Searching is an action for which it is difficult to design an icon; some software packages use a torch (flashlight) for this function. When a large number of functions are represented in iconic form, the user may find it difficult to differentiate between the icons. Metaphors Metaphors have played a significant role in software design. Metaphors help us understand and experience one type of thing in terms of another and so help us relate to often difficult or abstract concepts. The abstract example of love is often described by the metaphor of a journey along a path and so we say things like “We are at a crossroads,” or “This relationship is a dead-end street” [5]. In the software world, the desktop metaphor has been the most notable. Metaphors can be used at various levels of the interface. They can be a unifying model for the entire design or metaphors can be used at the icon level. Strong metaphors can make a system successful, but they are difficult to find. Erickson [6] provides a starting list of criteria for evaluation of metaphors and this list has been extended here: • Amount of structure. If the metaphor has some potential for detail those • • • • •
aspects may be useful. Applicability of structure. How much of the metaphor is relevant to the problem? Representability (visual). Is the metaphor easy to represent? Suitability (obvious). A metaphor can satisfy all other criteria, but if it fails here it is not suitable. Extensibility. Do the metaphors have the potential to expand and grow? Conciseness. Are aspects of the metaphor likely to mislead?
134
Internet Commerce Development
• Directly manipulative. Making both actions and objects into features of
the system that can be directly manipulated makes metaphor generalization difficult. • Coverage. How much of the problem domain can be covered by the metaphor? Navigation A Web site is an information space that is divided into pages. The designer must provide a mechanism for navigating around the Web space. Hyperlinks are used to move from one page to another, but they are normally placed as menu items or on icons. Key words in the text can also be hyperlinks to connect to a page somewhere in the system. In a large Web site with many pages these links form a complex network of paths. A Web site map (Figure 6.10) shows the relationship of the neighborhoods and pages and may even show the main links. Wherever the user is in the
Neighborhood 1
Neighborhood 2
Entry page Help and FAQs
Neighborhood 3 Core page Neighborhood 4
About the site Exit tunnel
Exit page Figure 6.10 A simplified site map.
Designing Internet Systems
135
system, he or she should be able to return to the home page or the main page of a neighborhood and to the previous and next pages. Form Design A form consists of questions or prompts and text input boxes. Designing an effective form involves the following: • Logical sequencing of questions and input boxes; • The use of meaningful prompts or questions; • Avoidance of jargon and abbreviations; • Alignment of prompts and input boxes for ease of data entry; • Providing the facility to make corrections and cancellations; • Providing access to help menus to aid users in completing the form; • Correctly sizing input boxes for viewing data; • Minimizing keyboard input as much as possible; • Using drop-down lists for restricted options; • Providing validation of input; • Providing informative error messages; • Grouping related input boxes.
Input boxes should be left aligned and text can be displayed above the text input box or to the left and aligned to the right or left. If text prompts are aligned to the left, then big gaps might occur before the input box if there are long prompts in the group. Figure 6.11 shows a design for a fill-in form. The prompts are aligned to the left and are not abbreviated. Essential input boxes are labeled “Required.” The password must be input twice to check for user typing errors. The input boxes are left aligned to give a clean edge. There are several drop-down list boxes and radio buttons to minimize typing. The input boxes are logically ordered. The first three fields related to creating a personal ID and password are grouped and separated from the personal details. The register button is placed at the end of the form. Evolution of Web Site Designs The conventions used in the design of Web sites have undergone considerable evolution during the Web’s brief history. Siegel [7] refers to first-, second-, and third-generation Web sites to explain the improvements in design. It is worthwhile explaining the features that characterize the three generations since no
136
Figure 6.11 An input form.
Internet Commerce Development
Designing Internet Systems
137
developer wants to put his or her name to a first- or second-generation design because they have design flaws. First-generation sites were characterized by a simplistic functionality. They tended to have text across the full width of the screen and in continuous paragraphs on one page. They had often been constructed by technical people whose main goal was to convey a simple message. Second-generation sites took advantage of extensions to HTML. Images and graphics replaced some of the text and the pages were organized in simple hierarchies. If you surf the Web, you will find that many first- and secondgeneration sites are still available. Design is a multifaceted concept with harmony and balance at its core. Third-generation sites demonstrate quality of design. Technical features are not the overriding factors. Design is evident in the structure of the Web site, the navigation mechanisms, the metaphors used, and the detailed design and layout on each page. Few sites can be classed as third generation. Site Structure The structure of a third-generation site should consist of an entry point, a central area, and an exit point. The entry point to a site is like a front door to a house: it is a way in and provides an indication of what is to come without overloading the user. This page should play a leading role in presenting a company’s image and in the branding of the site. Importantly, it should load quickly, otherwise potential visitors will be lost. Initial pages in a Web site can also be used to highlight giveaways and competitions to get the user interacting with the organization. From the entry point the user may take an entry tunnel to the central area. These tunnels can be used to build anticipation or to provide background information that may be useful later. However, entry tunnels are the exception rather than the norm. The central area consists of one or more core pages. These direct the user to the various neighborhoods in the Web site. A balance needs to be struck on these pages between providing enough information to encourage the user to go further and avoiding information overload that could make the visitor leave the site. The exit point should be clearly displayed. The user will be less likely to just leave the site by typing a URL if the way out is obvious. In addition, the exit point can also be used for gathering information on the Web surfer. Third-generation sites are constantly changing so that surfers are lured back and their interest level remains high. Some developers argue that changing a Web site on a monthly basis will have little effect on the number of visitors returning [7]. Changes on a weekly or even on a daily basis should have
138
Internet Commerce Development
a significant impact on the number of returning visitors. Building dynamic, interactive, and interesting Web sites requires that senior management put the Web site strategy high on the corporate agenda. Design in Action Many major companies have invested heavily in their Web sites. They have employed some of the most experienced Web designers to work on the applications. This does not always mean that they have the best designed sites. All sites have weaknesses! In this section of the chapter some Web sites are reviewed and their strengths and weaknesses discussed. Remember these are major corporate initiatives and as such are large team efforts, so the individual designer should not feel daunted by these standards, but take comfort from the fact that even the best sites can be improved! Microsoft’s Web site, as you would expect, consists of many functions and features. The home page (Figure 6.12) is clearly zoned with two menus along the top of the page. The right of the page is categorized for different users: business, developers, education, IT professionals, and so on. The main
Figure 6.12 Microsoft’s home page.
Designing Internet Systems
139
part of the page is dedicated to news and press releases. This can communicate special events, latest products, and trends. This area changes frequently and plays a role in showing visitors, including returning visitors, how dynamic the company is. In the top left corner is an icon for Internet Explorer. This must be one of the main reasons people visit the site, so by providing a link on the first page it creates a shortcut to the free download page. Overall the page has a lot of white space and is simply laid out to provide an uncluttered appearance. There are few graphics, which helps the page download quickly to the browser. In fact, the site is designed throughout for functionality and clarity with few graphics, simple text, and lots of white space. Figure 6.13 shows the home page of esi, an electronic share information service. People can subscribe to the service for 5 pounds sterling per month. The home page is clearly and simply designed with a menu on the left and login options across the screen. The prominent area below the title is dedicated to advertisements. A link provides a quick tour of the site, and the left side of the screen provides free market information. People may be attracted to the site because of the free information. There is plenty of white space and the pages from the site are generally fast to download.
Figure 6.13 The esi home page.
140
Internet Commerce Development
The Tate Gallery in England holds British and international art (Figure 6.14). The home page with a black background and a photograph of an exhibit provides an entrance to the site and sets an artistic tone. The next page provides menus to the neighborhoods in the site and also provides information about the organization and upcoming events. Around 8,000 works of art can be viewed online. Evaluating the Web Site Design Web site designs need to be evaluated. Prototypes can be developed that can be used to demonstrate the site to users. The main reasons for this are that even a team of designers can omit key requirements, develop inappropriate design themes, and need to fine-tune the detailed design features. Designers can improve their own designs to some extent, but at some point they need feedback from the users. The evaluations can take a variety of forms. The designers can refer back to the requirements and check that they have been met in the design of the Web site. Each option or link on the Web site can be checked to determine if it has been correctly implemented. Heuristic Evaluation The Web site can be evaluated heuristically. Heuristic evaluation is a usability inspection method in which a group of experts in the field produces a list of usability problems in an interface [8]. Initially, this method was used to determine usability features that deviated from accepted principles. Later work has extended the method to cover estimates of the severity of the problems. Nielsen and Phillips [9] have extended the method even further to cover estimates of actual user performance. They propose that the same method can be used for assessing system learnability. In this heuristic interface evaluation, the more expert evaluators that are used (up to 15), the more problems found [10]. On average, however, just five experts detected 75% of the usability problems with an interface, so this is seen as a cost-effective number. There are literally hundreds of individual usability heuristics, but they have been condensed into nine key usability heuristic principles by Nielsen and Molich [8]. These are listed next with an example of how the principle can be applied to Web site evaluation. 1. Design for simple interaction. A simple set of simple navigation paths through the Web site is desirable.
Designing Internet Systems
Figure 6.14 Three pages from the Tate Gallery site.
141
142
Internet Commerce Development
2. Use the terminology of the user. Avoid technical jargon and abbreviations that are not obvious to the user. 3. Minimize user memory load. Provide adequate instructions whenever they are required. 4. Be consistent. Be consistent in terms used, color, and layout. 5. Provide feedback. When users have selected options or have completed forms, be sure to provide feedback. 6. Provide clearly marked exits. This is necessary so that the user knows how to return to the home page, find key pages, or exit altogether. 7. Prevent errors. Design a way to validate input and minimize input with choice boxes, radio buttons, and so on. 8. Provide shortcuts. For example, provide a shortcut to return to the home page. 9. Good error messages. When input is incorrect, inform the user of exactly what is required. The advantages of having experts evaluate Web pages are that it is relatively inexpensive and can provide the developers with most of the weaknesses in the system, especially if three or four people have been used. The disadvantages with the approach are that it may be difficult to find three or four usability experts with experience in Web design. Weaknesses may be identified without methods of correcting them, and the method may work better with standard designs rather than innovative designs that may be outside the experience of the experts. Evaluations With Users Software can be evaluated with users in a number of ways depending on the goals of the evaluation and the stage the software is at in the systems development life cycle. The main ways to involve users in evaluation are discussed next. Start by observing users using the system in the typical work environment. This method would highlight ambiguities in the design and the major problems users face. Of course, this method is time consuming and requires a robust and completed system before it can be done. You can also monitor users through software logging because details of which Web pages are accessed frequently or not accessed may highlight design problems. Another option is to obtain users’ opinions through interviews and questionnaires. Users can complete a questionnaire at the end of a trial session, answering questions that focus on satisfaction levels and subjective feelings in
Designing Internet Systems
143
relation to the design. User acceptance of a system from a subjective satisfaction perspective is an important measure of a system’s success. Although a system may be evaluated favorably on every performance measure such as speed and number of mistakes made, the system may not be used very much because of user dissatisfaction with the interface. Experiments can be conducted to determine how well users perform when working with the Web site. A number of tasks are constructed to test key features of the system. Users attempt to complete the tasks and are monitored during the process. Data is gathered on the time taken to complete each task and the number of mistakes made. The data can then be analyzed to determine if the system can be amended to improve user performance. An adequate sample size for an experiment is needed to effectively evaluate a software interface. Generally, the more users evaluating the system, the more reliable the results. However, practical problems are often associated with working with a large number of participants; this is especially true if users are required to have specialized skills or prerequisite knowledge. Overall, design evaluation methods take a holistic approach. They attempt to evaluate the software designs in their entirety rather than one feature at a time. As DeSanctis, Snyder, and Poole [11] comment: Feature-at-a-time evaluation is not only tedious to conduct, it is conceptually inconsequential because “features” have the repeating composition problem; there are features within one feature (e.g., menus within menus, or icons within icons), making it difficult to isolate one system “feature” from another.
They also add that because systems vary so much in the presentation of their features, information based on features alone makes comparison of systems virtually impossible. Skills Required by Web Designers HannaHodge is a design firm that avoids using recruitment firms and instead advertises positions itself by e-mail. One e-mail I received direct from HannaHodge is shown here. It illustrates some of the skills required by Web designers. This company is looking to attract someone with the ability to develop innovative designs and fit in with other employees in a relaxed, creative environment. Of course, not all design companies are the same. Those that have contracts with large banks and blue chip companies often have a much more formal work environment and hence require people to fit into this.
144
Internet Commerce Development
We are . . . HannaHodge, a design firm located in Chicago’s River North district. Our focus is the design and implementation of User Interface and Branding strategies for interactive products. We are unique in providing our clients solutions that combine the art of design, the influence of branding, and the science of usability. We have . . . immediate openings for talented, enthusiastic Interface Designers that aspire to innovate. We laugh, cry, eat, and occasionally snooze in a unique environment that encourages exploration and growth of ourselves and our clients. Our pursuit is the design and development of highly usable, compelling products. We relish in the delight of our clients and their users. You are . . . compassionate about people’s needs, an over achiever, and have been known to use the words “cool” and “heuristic” in the same sentence. You enjoy brainstorming, lounge music, and designing interactive solutions from soup to nuts. We’d prefer that you have . . . • A personality • Experience in Branding, Visual Interface Design, or Usability Engineering • Experience designing and producing Web sites and user interfaces as part of project teams • A good understanding of the Web and working knowledge of HTML • 2–3 years of online, interactive, or identity design experience • Experience working in a user-centered development environment • Prototyping, coding, or programming skills • An excellent knowledge of Photoshop, Illustrator, and/or Freehand, and basic interactive development tools/software • A passion and willingness to stay on top of the latest design, technology, and new media trends • Strong oral and written communication skills • The ability to thrive under pressure and maintain your sense of humor • A passion about being the best at what you do At HannaHodge you will be presented with design challenges from diverse industries including automotive, banking, consumer electronics, business products, software, manufacturing, travel, and finance. If this sounds like a match and you would like to be a part of something unique, contact us.
Designing Internet Systems
145
Prototyping the Web Interface Prototyping is an essential component of the Internet Commerce Development Methodology. It comes to the fore in the design stage. Alternative design strategies are developed, prototyped, and presented to users both at management and administrative levels. The prototype would typically concentrate on part of the system functionality and features. Prototypes concentrate on the look and feel of the system. They focus on the interface and do not involve any significant back-end processing because this would be time consuming and hardly beneficial to the user at this point. There is little point in prototyping similar designs for separate parts of the system. The prototype should be used as an illustration of the intended designs. When the prototype has input and output forms then simple files can be used to simulate the accessing of the database. Back-end processing would only be carried out as a prototype when there is some doubt about whether it is technically possible. The overall structure of the site in terms of the entry point, central area, and exit points can be demonstrated. The detailed navigation mechanisms can be shown and the page layout conventions used. The detailed use of graphics and images for the branding aspects of the site can also be highlighted and illustrated. The designers may wish to work with alternative designs and obtain feedback on the preferences of the clients. The prototypes can be demonstrated on a one-to-one basis with key client users and also in group settings to stimulate debate over certain design issues. Client management can have the prototypes demonstrated to them in a group setting. They can give feedback on the image presented by the designs and on key aspects of functionality. Administrative staff and other users will be able to provide detailed feedback on content and functionality. The prototypes fulfill a number of uses. The feedback received can be used to make sure that the designs are just what the clients desire. The finished system is less likely to have any missing functionality. The users feel like they are part of the development project and hence are more likely to be enthusiastic about the completed system and more likely to use it. Sometimes the users cannot crystallize their requirements until they see detailed designs. Overall, prototyping has the potential to speed the development process, although this is not always the case if the process is not managed properly. What is more likely is that the resulting Web site will be of higher quality in terms of fulfilling users’ requirements and in terms of usability. The scope of the prototypes should not expand beyond what was initially agreed on in the requirements. Also, the designers must be careful not to develop too many alternative designs or to respond to the design whims of individual clients.
146
Internet Commerce Development
The designers must document all suggestions made by clients when demonstrating the prototypes. Changes to the prototype should then be made, and if they are significant, amendments to the demonstrations should be repeated. Several iterations of this cycle may be needed to develop a prototype that is satisfactory to both designers and client groups.
References [1] Fournier, R., A Methodology for Client Server and Web Application Development, Upper Saddle River, NJ: Yourdon Press, 1998. [2] Lawrence, E., et al., Internet Commerce: Digital Models for Business, New York: John Wiley & Sons, 1998. [3] Lodding, K. N., “Iconic Interfacing,” IEEE Computer Graphics and Applications, Vol. 3, No. 2, 1983, pp. 11–20. [4] Chang, S. K., “Principles of Visual Languages,” in Principles of Visual Programming Systems, S.-K. Chang, ed., Upper Saddle River, NJ: Prentice Hall, 1990, pp. 1–59. [5] Lakoff, G., and M. Johnson, Metaphors We Live By, Chicago, IL: University of Chicago Press, 1989. [6] Erickson, T., “Working With Interface Metaphors,” in The Art of Computer Interface Design, B. Laurel, ed., Reading, MA: Addison Wesley, 1990, pp. 65–74. [7] Siegel, D., Creating Killer Web Sites, Indianapolis, IN: Hayden Books, 1997. [8] Nielsen, J., and R. Molich, “Heuristic Evaluation of User Interfaces,” Proc. CHI ‘90, New York: ACM, 1990, pp. 249–256. [9] Nielsen, J., and V. L. Phillips, “Estimating the Relative Usability of Two Interfaces: Heuristic, Formal, and Empirical Methods Compared,” in Bridges Between Worlds, Proc. INTERCHI ’93, S. Ashlund et al., eds., ACM Press, pp. 214–221. [10] Preece, J., et al., Human–Computer Interaction, Wokingham, England: Addison-Wesley, 1994. [11] DeSanctis, G., J. R. Snyder, and M. Poole, “The Meaning of the Interface. A Functional and Holistic Evaluation of a Meeting Software System,” Decision Support Syst., Vol. 11, No. 4, 1994, pp. 319–335.
7 Implementing Internet Systems Introduction The focus of this chapter is the implementation of Web systems. It examines the tools for Web authoring and software development for Web applications. The main features of Java programming are explained. The security issues related to Web sites and in particular to Internet commerce transactions are highlighted. Finally, the factors that must be addressed in implementing the site and evaluating it are discussed.
Web Authoring Tools An organization developing an intranet or Internet site needs to consider which Web authoring tool or tools to recommend. It is a good idea to choose one as a standard for the organization for three main reasons. First, the training in the Web authoring package will be much easier; second, supporting one package is easier from a help and advice perspective; and third, licensing arrangements will be eased and it may even be more cost effective. Two main options are available in terms of Web authoring tools. A text editor can be used to develop HTML files in the HTML command language, or sophisticated packages can be used that provide a graphical environment for Web page development. The latter is a better option for most people without programming skills.
147
148
Internet Commerce Development
The second option is using Web authoring packages with a WYSIWYG (“what you see is what you get”) interface. A number of such packages are available on the market but here an overview of Microsoft’s FrontPage is given. FrontPage provides a complete set of tools for developing Web pages (Table 7.1). It can be used for developing a personal site or a corporate site. More sophisticated software systems are required to link to a range of databases (as covered in Chapter 6). FrontPage has two modules. The Explorer provides an environment in which to manage Web site development (Figure 7.1), and the Editor is for the editing and development of the actual Web pages (Figure 7.2).
Web Client Programming Languages Web pages can have scripts (VBScript, JScript, or Java Script) or Java applets embedded in them, which are then executed on the client’s machine once the page has downloaded. These scripts and applets can add interactivity to the Web pages and can perform specialized functions such as data validation on data input into forms. In addition, they take some of the processing burden off the Web server. A lot of media attention has surrounded the Java programming language. There are two main reasons for this. First, Sun (the company that developed Java) has to compete in the same environment as Microsoft. To get noticed in this environment, there has to be concerted promotion of the product. The second reason is that Java is a sound language that has a number of innovative features [1].
Table 7.1 FrontPage Features Explorer Features
Editor Features
Can modify templates and Wizards to quickly develop a Web site Can view a Web site in up to seven views Can check spelling throughout an entire Web site Allows definitions of permissions for access by development team members Can be published to the Web facility Provides editor features
Can add and develop new pages Provides six toolbars Can format text Creates interactive forms Can add hotspots to images Can draw and edit tables Can insert FrontPage components and special utilities
Implementing Internet Systems
Figure 7.1 FrontPage Explorer.
Figure 7.2 FrontPage Editor.
149
150
Internet Commerce Development
Sun developed a language called Oak that was used for consumer electronic devices. This language was small, reliable, and architecture independent. The developers realized that with the rise of the Internet, there was a need for an architecture neutral language, hence, the development of Java from Oak. Sun’s white paper [2] on the Java language describes it as follows: Java: A simple, object-oriented, distributed, interpreted, robust, secure, architecture neutral, portable, high-performance, multithreaded and dynamic language.
Although this description might seem too good to be true, the following sections concentrate on five important areas of software technology that are present within the Java language. Open Systems Java is an interpreted language. Interpreters exist as part of the Java Development Toolkit (JDK) or are included in Internet browsers, such as Netscape (version 2.0 or later). Although the language is interpreted, Java source code is also compiled. The compilation process creates what is termed a byte code file (Figure 7.3). These byte codes can be interpreted by any Java interpreter, irrespective of the platform (of course, as long as there is an interpreter on that platform). Java interpreters are available for UNIX, Windows 95, Windows NT, and Macintosh operating systems.
Java Code ClassName.java
Browser interprets class file
HTML document calls class file <APPLET Code="ClassName.class">
Figure 7.3 Java compilation and interpretation process.
Javac = java compiler
Bytecode ClassName.class
Implementing Internet Systems
151
The byte code files provide the portability from one platform to another since the platform-dependent features of the language can be drawn in at the interpreted point of running the program. Collectively, the interpreter and run-time system implement a virtual machine called the Java Virtual Machine [3]. Hence, Java applets (small graphical programs) can be downloaded over the Internet from one type of platform and be run on another (Figure 7.4). This single feature has been a revelation for the Internet and holds great promise for the future of programming since it has been referred to as a “write once, run anywhere” development approach [4]. At this level, Java has created a breakthrough in the evolution of open systems software. A Java-enabled browser, when accessing a Web site, downloads the HTML file to the local host. The browser recognizes a special hypertext tag called Applet. This means that the browser knows that an applet is associated with that Web page. The browser downloads another file of information—the byte code file. The Java-enabled browser interprets these byte codes and runs them as an executable program on the user’s host. The downloading is the start of applet execution and happens automatically. Through this method Java delivers executable content over networks [5]. Java started out as a consumer electronic device language, but it has gained greater notoriety as an Internet language. It appears to have set a standard for computer programming languages with respect to portability features. Importantly, it is setting a standard for open systems on a software level.
User host
Java browser
Byte code
Provider server
HTML document APPLET tag
Byte code Compiler
H/w & S/w interface
Figure 7.4 Java’s operation on the Web.
Java code
152
Internet Commerce Development
GUI and Multimedia Development Graphical components provide a mechanism in GUIs for inputting, selecting, and outputting data.