Enterprise engineering, a transdisciplinary activity : building Internet enterprises with components

Uloženo v:
Podrobná bibliografie
Název: Enterprise engineering, a transdisciplinary activity : building Internet enterprises with components
Autoři: Sadasivam, Rajani S., Deo, Praneet, Tanik, Murat
Informace o vydavateli: University of Alabama at Birmingham. Department of Electrical and Computer Engineering
Rok vydání: 2018
Sbírka: University of Alabama at Birmingham: UAB Digital Collections
Témata: Management information systems, Business planning -- Simulation methods, Knowledge management, System design, technical reports
Druh dokumentu: text
Popis souboru: application/pdf
Jazyk: English
Relation: Technical report (University of Alabama at Birmingham. Department of Electrical and Computer Engineering); 2018-08-ECE-139; Technical report (University of Alabama at Birmingham. Department of Electrical and Computer Engineering); 2002-09-ECE-008; Technical Report 2018-08-ECE-139 Technical Report 2002-09-ECE-008 Enterprise Engineering-A Transdisciplinary Activity: Building Internet Enterprises with Components Rajani S. Sadasivam PraneetDeo Murat M. Tanik This technical report is a reissue of a technical report issued December 2002 Department of Electrical and Computer Engineering University of Alabama at Birmingham August 2018 Technical Report 2002-09-ECE-008 Enterprise Engineering-A Transdisciplinary Activity: Building Internet Enterprises with Components Rajani S. Sadasivam PraneetDeo Murat M. Tanilc TECHNICAL REPORT Department of Electrical and Computer Engineering University of Alabama at Binningham December 2002 ENGINEERING OF ENTERPRISES A TRANSDISCIPLINARY ACTIVITY Building Internet Enterprises with Components Contributed by: Murat M. Tanik, Rajani S. Sadasivam, Praneet Deo 1 El\TTERPRISE APPLICATION DEVELOPMENT -CHALLENGES The mles of busjness have changed. In today's environment, new products are launched and businesses are bam every day. Customers are hard to keep and costly to replace. Companies face intense competition from traditional powerhouses and new play­ers and must continue to find new revenue opportunities and ways to increase efficien­cies. Today, more than ever, businesses depend on strategic relations with their partners and suppliers to create value chains that wjJl provide a competitive edge in the market. In effect, there is a new network economy emerging in whkh companies trade with partners and customers over the Intemet in real time [23]. However, in order to ensure a seamless, consistent customer experience, real time automation of business processes that span across trading partners is required. Traditional ways of doing business, such as email, faxes, and voice mail introduce delays and requi_re data to be reentered into systems multiple times. Hence, there is a need for dynamic en­terprise integration that can automate business processes encompassing a diverse range of packaged and legacy applications and systems within the corporation and among partners [5, 13]. 1.1 Faster Time-to-Market with New Products and Services Btinging a new product or service to market involves collaboration with research­ers, production partners, distribution partners, and customers. Frequently, time is lost be­cause communications break down between a company and any of these stakeholders. Sharing information, such as customer requirements, forecasts, production schedules, and inventory levels, between B2B trading partners allows better understanding of market needs and trends, earlier initial orders, better production planning, and higher margins. As such, enterprise integration can provide a significant ";first mover" advantage in emerging markets, enabling an aggressive firm lo grow more quickly than competitors. 1.2 Better Service Customers are increasingly demanding a personalized, single point of contact for all interactions with a company. The company needs to deliver full knowledge of andre­sponsibility for the transaction at this point of contact, even if the product or service was delivered through third parties. Integration of systems with all the companies that con­tribute to the transaction (billing, shipping, customs, insurance, financing, installation, etc.) allows the company to deliver the buying experience and quality of service required in the network economy to retain loyal customers. 1.3 Better Sales Process Too often, the sales process is marred by promises that cannot be kept, because the products are not in stock, and the suppliers are not able to deliver within the required 2 time frame. This becomes an even more complex issue to deal with for businesses that allow ordering over the Web, since online customers demand immediate confirmation of the availability of products. Integration of information systems across the supply chain allows a real time response to customers regarding configuration options, pricing, and availability. This increases the efficiency of the buying process, eliminates unnecessary delays, and ultimately increases customer loyalty. 1.4 Lower Operational Costs Companies spend a significant percentage of their revenues on such administra­tive processes as procurement of office supplies. Automation of procurement by integrat­ing order systems directly with suppliers has been shown to drive down the handling costs significantly; in so doing, a company reduces the cost of their office supplies. For the supplier, there is the benefit of an increased number of orders and a greater number of customers with little incremental cost. 1.5 Lower Production Costs Many companies design, market, and sell products that are being manufactured by a third party or contain components from other companies. Production delays or budget overruns arc often the result of poor communications between the designer and subcon­tractors. By collaborating over the Internet through integrated systems, companies can automate business processes that support the manufacture and supply of products and components, thereby eliminating delays and reducing costs. 3 1.6 Lower Inventory Costs Inventory management can be a very complex operation. Inventory levels are set by market trends, sales projections, pipeline status, production planning, and the reliabil­ity of suppliers, among others measures. Sharing this .information in real time with cus­tomers, distlibution channels, and suppliers can take much of the guesswork out of inven­tory planning. In some industries, such as ltigh-tech manufacturing, vendors have man­aged to achieve zero-level inventodes, with products that are only manufactured after the order has been received. Not surprisingly, these firms enjoy better customer service and higher margins due to their more effi cient business processes. 1.7 Open Sbmdards Exchange of information between companies has to be based on a standard proto­col. Each company interacts with many other companies, and it would not be practical to have to agree on a different protocol for each. XML has become the de facto standard for defining business documents that can be exchanged with partners. There are several groups, such as RosettaNet, Electronic Business XML, and BizTalk, which are defming standard XML documents and processes for specific industries. Business partners will need a standard and inexpensive way to participate in enterprise integration for it to be effective. In many cases, trading partners may have their own investments in enterprise and enterprise integration, so there is a need to make sure that the solution used is fully compatible with XML standards and docs not have proprietary extensions that would re­strict ability to integrate with partners. 4 1.8 Implementation Speed In most cases, speed is the driving factor as companies seek to establish new products or services in new markets. Being first in a market and establishing a strong brand can have a tremendous impact on market share and profitability. Not only are there advantages to completing a project on time, there could be considerable business risk if the implementation is delayed due to unexpected custom programming or steep learning curve requirements. The key to rapid implementation is having easy-Lo-use graphical tools which allow companies to easily define and configure the business processes, and to have pre-built adapters which provide connectivity to popular front-office, back-office, and e-Commerce applications, databases, and legacy systems. In addition, it is impmtant to have an In tegration Methodology (IM) that guides the implementation of the project every step of the way, elintinating risks and unnecessary delays. By selecting an e­Business integration system that encompasses both enterprise and enterprise integration, the company can be ensured that the entire end-to-end integration project is completed quickly without having to worry about ";integrating the integration systems."; Addition­ally, the skills and experience developed are more broadly applicable, thereby decreasing long-term costs. 1.9 Security If sensitive business infonnation is exchanged, such as customer records, orders, or financial transactions, security is of paramount importance. Although most systems offer a basic level of encryption, modern e-Business practices suggest that more exten­sive use of authorization and authentication are important to ensure there is no inadver- 5 tent access to information. In a B2B environment, pa.Ilners are reluctant to share informa­tion unless they know that the infonnation will remain confidential. Therefore, being able to control access to and distribution of sensitive information based on its content is criti­cal. Use of Public Key Infrastructure (PKI) and digital certificates can ensure that secu­rity is maintained within the enterprise and over the Internet. 1.10 Business P•·ocess Support Enterprise integration is, after all, about busi.nesses. The system selected should enable the company to define business processes graphically without lengthy custom programming. Just as blueprints are designed before building a house, having graphical tools makes it easier to ensure that the business processes are COJTect and understood be­fore beginning implementation. Otherwise, it may be possible to have a costly and time­consuming ";remodeling" afterward. Once the system is designed and deployed, it should have management and moni­toring capabilities to ensure that business processes continue to run properly. If busi­nesses do not have these facilities up front, they may delay the impJernenlation consid­erably with last-minute scrambling, or worse, deploy a system without management and monitoring systems at all, which would be like driving a car without a gas gauge. Steps should be taken to make sure that it is possible to monitor the status of transactions and that any exceptions are flagged and dealt with properly, without the risk of orders fal ling through the cracks. 6 1.11 Flexibility As integration is initiated whh a business partner and elements inside the enter­prise, there is a need to consider how frequently changes are expected in the business model, relationships, and processes. In the network economy, market dynamics change continually. Besides external factors, does the company expect to upgrade or modify any of the applications used? Will the organization participate in any mergers or acquisitions? How important is it 1.0 make these changes quickly? Having graphical tools to design and manage integration system is impotiant. However, more importantly, the integration sys­tem chosen is must be dynamic in order to easily accommodate changes in business proc­esses and information, and so that changes can be made quickly without programming. Not only will that save on implementation time and costs, but it will also help ensure that long-term maintenance costs are reduced. It is possible to implement a new business model without the concern that the information systems infrastructure may not be able to change to suppmt it. 1.12 Reliability Reliability is an essential requirement for any c-Business system. Increasingly, e­Business integration systems are tying together mission-critical business processes. In­formation delivery must be guaranteed against failures in underlying software, hardware, and networking systems. In many cases, there is a need for complete end-to-end transac­tional integrity across different business systems, incJuding packaged ERP systems and mainframes. It should be determined that the e-Busincss integration system selected of­fers guaranteed event delivery, assuring reliable integration across the network by provid- 7 ing automatic queuing of messages. Ideaily, the system should be able to withstand the ";pull-the-plug" test of shutting down all power completely without the loss of a single event. 1.13 Scalability Scalability means the ability to accommodate large volumes of transactions with­out delays in processing. Scalability is patticularly important for systems which require broad connectivity with partners or customers over the Internet, where it is difficult to predict the volume of demand. The classic ";hub and spoke" architecture is often used to reduce the complexity of traditional point-to-point integration. This architecture can be easily extended with multiple brokers providing unlimited scalability to accommodate large volumes of transactions. The multiple broker option works much like a telephone system that can be expanded by adding additional switches in branch offices or remote locations. The routing of documents across these brokers is handled transparently so there is no change necessary to the systems. By having built-in scalability, it is possible to build an e-Business solution that wiJl expand over time to cross-organizational and geo­graphic boundaries without requiring changes to the existing system. 2 COMPONENT-BASED DEVELOPMENT The issues confronting the software development community today are signifi­cantly different from the problems it faced only a decade ago. Advances in software de­velopment tools, techniques, and technologies during the last two decades have greatly enhanced the ability of developers to leverage large amounts of software for creating new 8 applications through the reuse of software libraries and application frameworks. Techno­logically speaking, infrastructures for component development (for example the Compo­nent Object Model (.COM) or Enterprise Java Beans (EJB)) are rapidly matudng. A component is an object with two essential aspects: independently developed body for composition with other components, and well-defined run-time interface. Com­ponents are gradually becoming the units of reuse from which systems of varying re­quirements are built [12]. The systematic use of software components is a necessary re­quirement if we are to go beyond incremental improvements in software development [7]. Component-Based Development (CBD) is a software development methodology in which all life-cycle processes arc based on the integration of components. Develop­ments of components themselves are carried out by any mechanism as long as the product itself is a component. Developing software systems using the CBD approach involves three steps: 1) developing software from pre-produced components, 2) reusing those components in other applications, and 3) easily customizing and maintaining those com­ponents to produce new functions and features [12]. Building large systems using components requires an appropriate methodology. Current software development methods do not adequately cover the entire life cycle of building systems using components. A component-based methodology has similarities with the object-oriented approach, due to the conceptual similarities of objects and com­ponents. However, objects differ from components as they are primmily specified be­cause of system analysis and design. Software components are pre-built without advance knowledge of the specific application in which they wiiJ be used. The greater emphasis 9 on software tools for manipulating components during development distinguishes the component-based methods from all the other development methods. Before using components, one must specify a component model. The component model must define standards for building individual components, thus facilitating the building of the software system by aligning these components. Standardization of com­ponent models allows interaction between components without having to deal with the interface mismatch between components. There are several competing component mod­els, such as Microsoft's (D) COM I COM+ family and Sun's Enterprise Java Beans. 3 JAVA Java consists of tlu·ee major concepts: Java programming language, the Java Vir­tual Machine (JVM) and Java Platform. Java programming language is the language in which Java applications like applets, Servlets and JavaBeans are written. When Java pro­gram compiled, it is converted into byte codes that are portable machine language of a CPU architecture known as the Java Virtual Machine. Java Platform is rhe predefmed set of Java classes that exists on every Java installation for use of all Java programs. It is also referred as Java Runtime Environment (JRE) or core Java APis [17]. 3.1 Benefits of Java Following are some of the key benefits of Java technology which made it stand apart from other technologies and became a major technology for the fu ture of computing world [17 ]. 10 • Java programs can be written once and used anywhere, where Java Platform is available. This gives Java applications platform independence, which is one of the most important advantages of Java technology. • Java is des.igned for networks. Therefore, security is the key feature of Java tech­nology. Java's security mechanism is called Sandbox model. Sandbox model ex­ists in order to provide a very restricted environment in which to run untrusted code obtained from the open network. The essence of the sandbox model is that local code is trusted to have full access to vital system resources (such as the file system) while downloaded remote code (an applet) is not trusted and can access only the Jirnitcd resources provided inside the sandbox. Java 2 Platform takes se­curity model a step further. lt Jnakes security levels and restrictions highly con­figurable and extends them beyond applets to applications. • Java is designed for networks. Thus with the help of Java it is possible to develop network based applications using client-server or multi-tier architecture. In addi­tion, Java applications can dynamically extend it by loading new classes over a network. Thus, Java enables a powerful new metaphor of application design and development. Java is dynamic and extensible. Java code is organized in modular, object-oriented units called classes. Classes are stored in separate files and loaded whenever needed. This means that program can dynamically extend it to load classes, which it needs to expand functionality. • From the start, Java language and Java Platform are designed considering whol~ world. Unlike most programming languages which support 8 bit characters, Java 11 uses 16 bit Unicode chm·acters that represent alphabets and ideographic character sets of the entire world. 4 JAVA 2 ENTERPRISE EDJTION COMPONENT MODEIJ (J2EE) J2EE is a set of coordinated specifications and practices that together enable solu­tions for developing, deploying, and managing multi-tier, server-centric appbcations [14]. By offeling a single standard, J2EE simplifies the development and deployment process. The unified J2EE standard \~rraps and embraces existing resources required by multi-tier applications with a unified, component-based application model [17]. The J2EE modular components have a complete set of services that define and handle many details of appli­cation automatically. The J2EE platJOJm provides an n-tiered distributed application model, the ability to reuse components, flexible transaction control, and a unified security model required to build enterprises. Tbc J2EE environment helps in encapsulating func­tionality in specific types of components. EJB encapsulates business logic components. The front-end can be presented through Hyper Text Markup Language (HTML) pages, through Web pages powered by Java 'technology-based applets, Java Sen•Jets API, or Java Server Pages (JSP) technology, or through stand-alone Java applications. The com­ponents can communicate using vruious standards: HTML, Extensible Markup Language (XML), Hyper Text Transport terminal (HITP), Secure Socket Layer (SSL), Remote Method Invocation (RMI), and others [4]. The J2EE slandards offer fu ll supp01t to the set of following API's [ 17]. 12 4.1 Servlets Java Servlet technology provides web developers a simple, consistent mechanism for extending the functionali ty of a web server and for accessing existing business sys­tems. Java Servlets have made many web applications possible. Servlets are the Java Platform technology of choice for extending and enhancing web servers. Servlets provide a component-based, platform-independent method for bujJding web-based applications, without the performance limitations of CGI programs. And unJike proprietary server ex­tension mechanisms, Servlets are server and platform-independent. This leaves pro­grammer fi·ee to select a best of breed strategy for servers, platfom1s, and tooJs. Servlets have access to the entire family of Java APis, including tbe JDBC APis to access enter­ptise databases. Servlets can also access a library of HTTP-specific calls and receive aJJ the benefits of the mature Java language, including portability, performance, reusabili ty, and crash protection. Today, Servlets are a popular choice for building interactive web applications. Third-party Servlet containers are available for Apache Web Server, iPlanet Web Server, Microsoft TIS, and others. Servlet containers can also be integrated with web-enabled application servers, such as BEA WcbLogic Application Server, IBM Web­Sphere, iPlanet Application Server, and others . 4.2 Java Server I,ages (JSP) JSP helps in creating web pages that have both static and dynamic content. Use of Java in JSP helps in portability, better productivity, and robust coding ability. JSP can take advantage of other Java and J2EE APis, including JavaBeans, EJB, Java Mail, and Servlets. This abj)jty to use a wide range of data sources, system resources, and network 13 services makes JSP a very flexible solution. JSP helps maintain a strict separation be·· tween presentation and implementation elements. This establishes a well-defined inter­face between page design and application development. 4.3 Enterprise Java Bean Enterprise Java Beans (EJB) can be used to encapsulate the business logic of an application. EJB otTers many advantages and simplify the development of enterprise ap­plications. • The EJB container is responsible for transaction management and security au­thorizat. ion. • The EJB encapsulates the business logic. • Since the bean contains the business logic, the clients are very thin, which makes the application easy to run on small devices. • EJB is portable and can be reused to build other applications. This helps the developer concentrate on the presentation and not on complex business logic. There are three types of entity beans. A session bean represents a single client inside the J2EE server. The client invokes the session bean's methods for perfOim­ing an application that is deployed on the server. The session bean performs work for its client. Thus the session bean reduces the client's complexity by executing business tasks inside the server. The entity beans represent a business-entity object that exists in persis­tent storage. Entity beans are persistent, allow shared access, have pdmary keys, and may partidpate in reJationships with other entity beans. Entity beans are of two types: Con­tainer Managed Persistence (CMP) and Bean Managed Persistence (BMP). Container- 14 managed means that the EJB container handles all database access required by the bean. The CMP bean's code contains no Structured Query Language (SQL) calls. The bean's code is not tied to a specific database and can be redeployed on different J2EE servers tbat use different databases. In short, CMP provides a :flexible and portable database ac­cess. With bean-managed persistence, the entity-bean code contains the SQL calls that access the database. Message-driven beans act as a listener for the Java Message Service (JMS) API, processing messages asynchronously. 4.4 Java Beans Java Beans are reusable components written in .J ava. By using the JSP collection of bean-related tags, Web page developers can leverage the power of Java to add dy­namic content without writing a single line of Java code. The bean container allows JSP developers to call up the beans, configure them, and access their information and behav­ior. The bean container defines its own way of presenting and interacting with the bean and writes the resulting Java Code. This allows content developers to work with beans in a more intuitive fashion. 4.5 Java 1\tfail The Java Mail API provides a set of abstract classes that can be used to model a mail system. Java Mail provides a platform and protocol-independent frame to build mail and messaging applications using Java. Java Mail allows the use of vadous message- ac­cess protocols, like Post Office Protocol 3 (POP3) and Internet Message Access Protocol (lMAP), and message-transfer protocols like Simple Mail Transfer Protocol (SMTP). 15 Java Mail interacts with the message through the JavaBeans Activation Framework (JAF), which provides a uniform way of determining message type and encapsulating it. 4.6 Java Database Connectivity (JDBC) JDBC technology is an API that lets access to virtually any tabular data source from the Java programrrring language. It provides cross Database Management System (DBMS) connectivity to a wide range of Structured Query Language (SQL) databases and now with the new JDBC API, it provides access to other tabular data sources, such as spreadsheets or flat files. The JDBC API allows developers to take advantage of the Java Platform's Write Once, Run Anywhere capabilities for industrial strength, cross-platform applications that require access to enterprise data. With a JDBC technology enabled driver, a developer can easily connect all corporate data even in a heterogeneous environment. 5 XML XML is a meta-markup language that provides a format for describing structured data. XML faciHtates more predse declarations of content and more meaningful search results across multiple platforms. In addition XML will enable a new generation of web­based data viewing and manipulation applications. In XML, it is possible to define an unlimited set of tags. While HTML tags can be used to djsplay a word in bo]d or jtalic, XML provides a framework for tagging st111ctured data. An XML element can declare its associated data to be a retail price, a 16 sales tax, a book title, the amount of precipitation or any other desired data element. As XML tags are adopted throughout an organization's intranet and by others across the Internet, there will be a corresponding ability to search for and manipulate data regardless of the applications within which it is found. Once data has been located, it can be delivered over the wire and presented in a browser in any number of ways or it can be handed off to other applications for further processing and viewing. XML also provides stmctural representation of data. XML provides a structural representation of data that has proved broadly implementable and easy to deploy. Industrial implementations in the SGML community and elsewhere demonstrate the intrinsic quality and industrial strength of XML's tree-structured data format. XML is subset of SGML that is optimized for delivery over the web. It is defined by the W3C. Sttuctured data will be uniform and independent of the applications and vendors. This resulting interoperability is kick-starting a new generation of business and electronic­commerce web applications. XML, which provides a data standard that can encode the content, semantics, and schemata for a wide variety of cases ranging from simple to com­plex, can be used to mark up • An ordinary document. • A structured record, such as an appointment record or purchase order. • An object with data and methods, such as the persistent form of a Java object or ActiveX control. • A data record, such as the result set of a query. • Meta-content about a web site, such as Channel Definition Format (CDF). • Graphical presentation, such as an application user interface. 17 • Standard schema entities and types. • All links between information and people on the web. Once the data is on the client desktop, it can be manipulated, edited, and presented in multiple views, without return trips to the server. Servers can now become more scalable, due to lower computational and bandwidth loads. In addition, since data is exchanged in the XML format, it can be easily merged from different sources. XML is valuable to the Internet as well as to large corporate intranet environ­ments because it provides interoperability using a flexible, open, standards-based format with new ways of accessing legacy databases and delivering data to web clients. Applica­tions can be built more quickly, easjer to maintain and can easily provide multiple views on the structured data. ln XML, data is separated from the presentation and the process. The power and beauty of XML is that it maintains the separation of the user interface from the structured data. HTML specifies how to display data in a browser. XML defines the content. For example, in HTML, tags are used to tell the browser to display data as bold or italic, in XML tags are only used to describe data s11ch as c.ity name, temperature and barometric pressure. In XML, stylesheets such as Extensible Style Language (XSL) and Cascading Style Sheets (CSS) are used to present the data in a browser. XML separates data from the presentatjon and the process, enabling displaying and processing of the data as, by applying different style sheets and applications [ 16]. This separation of data from presentation enables the seamless integration of data from diverse somces. Customer information, purchase orders, research res ults, bill payments, medkal records, catalog data and other information can be converted to 18 XML on the middle tier allowing data to be exchanged online as easily as liTML pages display data. Data encoded in XML can then be delivered over the web to the desktop. No retrofitting .is necessary for legacy information stored in mainframe databases or documents and because HTTP .is used to deliver XML over the wire, no changes are re­quired for this function. XML docurnents are easy to create. In addition, the data can be displayed in many different ways or handed off to other applications for further process­ing. In addition, style sheet can be applied to display information in a browser [25]. 5.1 Benefits of XML XML offers simplicity. First and largest benefit of XML is simplicity. Consider a value of parameter X is represented as a 4-byte integer in the network byte order begin­ning at the twelfth octet from the top of table. To understand this binary message one would like to understand the hexadecimal dump and understand the message content bit by bit. It is a tedious and time-consuming job. By contrast XML is a character based for­mat and therefore human readable. Further XML messages can be easily read, created and modified by using standard and common tools such as text editors. This makes un­derstanding of XML documents very easy. XML provides richness of data strucn1re. Although simple, XML is powerful enough t.o represent the complex data structures, as different applications require different structures for representing data. XML documents have easily rooted tree structure. For many applications, a tree structure is general and powerful enough to express complex data. It is sensible balance between ex pressive power and simplicity. In addition, there are ways to add other data types such as graphs and tables into tree structure although 19 they might be inefficient. Thus, XML has sufficient power to express complex data struc­tures to satisfy the needs of most applications [16, 27]. XML has international character encoding capabilities. One substantial benefit of XML is the capadty of the XML is to handle international character sets. Today busi­nesses are often international in scope. This is especially true in case of web applications because Internet easily leaps national borders. For example, it is often possible to have street names in Chinese or person names in Arabic. The XML 1.0 recommendations is defined based on IS0-1 0646 (Unicode) character set, so virtually a11 the characters that are used today all over the world are legal characters for XML documents [2 1]. 5.2 Application Areas of XML XML can be used as metacontent. XML was mainly thought as language :for metacontent. Metacontent is the information about document's content such as title, au­thor, file s.ize, creation date, revision his tory, keywords etc. Metacontent can be used for searching, information ftltering and document management. Suppose a user wants a document over the Internet. If that person gave the search over the Internet by the author name of that document, currently most of documents found will have name of the author in the body of the document. Those necessarily will not be the documents written by the author whose document user intend to find. If XML is used as too] to search those docu­ments, then by using metacontent info1mation XML can easi ly find the documents writ­ten by the author whose document user intend to find. XML is usefuJ in databases. Many three-Lier applications extract data from the backend database. Usually the results are transformed via the table tag of HTML 20 and displayed on the screen. If the data is delivered as X.tv1L document that preserves original information such as column names and data types, client can use it for other pur­poses that just displaying the data on the screen. For example, it might be possible to load the data into spreadsheet and do some computation such as calculating sums and aver­ages. XML can be used in messaging. The hottest application area of XML is messag­ing. Messaging is the exchange of messages among organizations or between application systems within an organization. Messaging among companies has been traditionally done by Electronic Data Interchange (EDI). However, it has some limitations such that small companies cannot contribute to it because of the large cost associated with technologies like EDI. It is natural that a small company that already has Internet would want to do B2B messaging with the.ir partners using inexpensive, off-the-shelf software. Also even the large companies that already have ED! systems, B2B on the Internet can be a good opportunity to invite new small partners to do business. There are two technical problems with B2B messaging on the Internet. One is insufficient security. This can be solved by using modern cryptographical protocols like Secure Socket Layer (SSL). Other problem is on the use of standard data format to be used. Here XML can play a key role. Since XML and HTML are closely related, it should be easy for the people who are famiJjar with basic HTML syntax to understand the gist of XML. A DTD together with few mes­sage examples should give a good understanding of the message format, enough to start building a prototype implementation. Thus with XML the threshold for participating in a message exchanging community can be quiet low. 21 6 WEBSERVICES A new paradigm for software is beginning to emerge based on a service model of loosely coupled network components, as in Microsoft's .Net architecture and the evolv­ing industry standard for Web services. IBM defines a Web service as a collection of functions that are packaged as a single entity and published to the network for use by other programs [19, 24]. Web services are building blocks for creating open distributed systems and allow companies and individuals to quickly and cheaply make their digital assets avai.lable worldwide. One early example is Microsoft Passport, a convenient au­thentication service hosted by Microsoft. Here are some other examples: • A credit checking service that returns credit infonnation when given an indi­vidual's social security number. • A stock quote service that returns the stock price associated with a specified ticker symbol. • A purchasing service that allows computer systems to buy office supplies when given an item code and a quantity. Web servkes are self-contained, self-describing, modular applications that can be published, located, and invoked across the Web. The next generation of advanced Web applications will be constructed from Web services building blocks. The promise of the newer Web services is that ";standards" will make it easy for one service to provide the data to another. A Web service can aggregate other Web services to provide a higher­level set of features. Web service advantages come from extending the XML technology and the HTIP protocol. XML and HTTP are tmly universally portable and are interoper­able over vendor-specific solutions and independent of operating systems. 22 6.1 Simple Object Access Protocol SOAP is the Simple Object Access Protocol, a way to create widely distributed, complex computing environments that mn over the Internet using existing Internet infra­stmcture [21]. SOAP is about applications communicating directly with each other over the Internet in a very rich way. SOAP provides a simple and lightweight mechanism for ex­changing stmctured and typed information between peers in a decentralized, distributed environment using XML. SOAP consists of three pa1ts [ 19): • The SOAP envelope constmct defines an overall framework for expressing what is in a message, who should deal with it, and whether it is optional or mandatory. • The SOAP encoding rules define a serialization mechanism that can be used to exchange instances of application-defined data-types. • The SOAP Remote Procedure Call (RPC) representation defines a convention that can be used to represent remote procedure calls and responses. SOAP provides a standard definition of how XML can be combined with HTTP for providing digital services. 6.2 Web Services Description Language Web Service Description Language (WSDL) is an XML language that contains information about the interface and semantics of a call to a Web service [21]. The ser­vices are defined as collections of network endpoints or ports. The WSDL of a Web ser- 23 vice defines that Web service and how to access it. Using the WSDL, a SOAP request is formed to invoke the service. The Web service is defined by using the following conven­tions provided by the W3C consortium. • Types-a container for data-type definitions. • Message-an abstract, typed dei1nition of the data being communicated. • Operation-an abstract description of an action supported by the service. • Port Type-an abstract set of operations supported by one or more endpoints. • Binding- a concrete protocol and data format specification for a particular port type. • Port-a single endpoint defined as a combination of a binding and a network address. • Service- a collection of related endpoints. 6.3 Universal Description, DisCOVl~ry, and Integ•·ation (UDDI) UDDI is a specification for distributed Web-based information registries of Web services [20]. The Universal Description, Discovery, and lntegration (UDDI) project ";creates a platform-independent, open framework for describing services, discovering businesses, and integrating business services using the Internet, as well as an operational registry that is available today" [17]. UDDI is a publicly accessible set of implementa­tions of the specification that allow businesses Lo register information about the Web ser­vices they offer so that other businesses can find them. UDDI registries are used to pro­mote and discover these distributed Web services. The intended audjence is anyone look­ing for a conceptual overview of UDDI for the purpose of understanding what it is, who 24 uses it, and how a distributed registry makes it possible for your programs to discover and interact with Web services that other companies expose on the Web. The UDDI specifi­cations define a way to publish and discover information about 'Veb services. The term ";Web service" describes specific business functionality exposed by a company, usuaHy through an Internet connection, for providing a way for another company or software program to use the service. 7 A METHODOLOGY FOR BUILDING INTERNET ENTERPRISES Current1y, there are major efforts being directed towards creating higher levels of programming that allows the solution to a problem to be defined as a process within the problem domain [ I]. The implementation of such high-level languages requires the avail­ability of a component architecture model in which the process representing the solution can be described in terms of coarse-grained components with a high level of abstraction. Fm1hermore, the required components are likely not to be centrally located, but rather distributed over wide-area networks such as the Internet or the Web [22]. Although software development has improved significantly over the years, it still has not made sufficient improvement at the process layer. Process improvement is widely recognized as essential for gaining improvements in software product quality. Se­curing a competitive advantage with improved effectiveness and efficiency .in a techno­logically restmctured new world and economy requires a scientific and strategic approach to the analysis of an established business process and the synthesis of more efficient and effective new processes. The fundamental challenge is not simply the creation of new tools, techniques, or computers; it is the creation of a new perspective and paradigm 25 when incorporating and integrating the tools, techniques, and information technologies for the effective bandJing of business practices - whatever they may be. Improving soft­waJe process efficiency and resulting product quality can be achieved through rigorous process definition , analysis, and tailoring. In this chapter we propose a methodology based on the ";T-Strategy" model, described in the book ";Zero Time: Providing Instant Customer Value-Eve1y Time,"; by Kozmet.sky, Yeh, and Pearson and our previous works on Internet enterprises [11]. 7.1 Introduction Although software developers continue to harness the power of the Internet to support the business activities of enterprises, we still are far from achieving our objective of a full-scale electronic enterprise {7]. The current software systems lack many desirable qualities, such as support for ease of integration, automation, and modification. Over the last two decades, enterprises have undergone major transformations in the way they use software systems to perform their operations. Traditionally, enterprises are organized into units that perform different functions, such as accounting, sales, marketing, manufactur­ing, and research and development. Software systems used within enterprises have evolved to support each functional unit As the operations became increasingly dependent on software systems, these systems became very elaborate and intertwined, and are often customized to suit specific needs. As a result, we have been successful in creating com­plex systems that reduce time and increase effic iency in executing the functions, but which present a great deal of difficulty in any type of integration. Software systems should be more easily integrated and automated, while not inhibiting evolutionary 26 changes or processes necessitated by changing business needs. Over the last decade, our understanding of software design has matured significantly, and three-tier software archi-tecture has emerged, particularly in the design of enterprise software. While three-tier architecture has increased the performance, maintainability, reusability, scalability, and flexibility of software, the capabilities are still limited in supporting the needs of modern enterprises [1, 2]. 7.2 Background The Zero Time principle and T-Strategy model stresses that, for building success-fuJ real-time business, enterprises must first develop a key core competency. Enterprises must apply that vision, core competence, and distinctiveness to one market, and then ex-pand it into different, but similar and usually related markets. Fig. 1 presents the Koz-metzky T-Strategy. Vision Different Markets ( 1,2,3,4,etc.) Core Market Market Market Market Competency 1 2 3 4 Zero Time Operations Fig. 1 Kozmetzky T-Strategy. 27 The core competencies are the crown jewel of an enterprise, and should be carefully nur-tured and developed [10]. Enterprises can determine further business directions on the strength of the competencies. /- Same Vision .-- Zero Time Operations Englishtextdoctor.com Process Model (Bridge) Vision Core Competency Zero Time Operations Different Markets arket Ma;;el ~a~el Mru~ l 2 3 4 Fig. 2 Kozmetzky T-Strategy Mapped to the IT Pyramid of Department of Energy. We extend the T-Strategy model for IEs. The IT Pyramid architecture used by the U.S. Department of Energy is mapped to the T-Strategy model by the formation of a concep-tual bridge spanning the IT Pyramid architecture and T-Strategy business paradigms [6]. From this mapping, we identify that the process layer of any e-business must be derived from the core competency of that business. Please refer to Fig. 2, Kozmetzky T-Strategy mapped to the IT Pyramid of Department of Energy. 28 7.3 The Enterprise Process Model With the background and knowledge obtained from our previous work, we stud­ied the Microsoft Enterprise model (MEM). The MEM is an orderly summation of all the requirements that an enterprise application must meet, divided into six specific sub­models [12]. The six sub-models are the business mode], user model, logical model, technology model, physical (architectme) model, and the development model. A success­ful application begins by determining business requirements and results in the physical architecture. The MEM provided important insights into the requirements of a successful enterprise, such as the impmtance of relationships, the impot1ance of requirements, and the importance of sub-models. However, the enterplise model does not incorporate the principles of zero-time and process improvement. Please refer to Fig. 3, The Enterprise Process Model. We apply to the MEM our idea that the process layer must be derived from the core competency of the business [I]. The process layer is comprised of complex relationships between people, tools, designs, artifacts, and activity [9]. We have determined that the relationship between the sub­models of the enterprise application model correlates closely with the relationship be­tween the elements of the process layer [1]. An understanding of the process layer is im­portant because the relationships between the process elements offer a more abstract rep­resentation. The elements of the process enable the transition between resources and the product. Each of the process elements contribute in some way towards resu1ting product quality. We propose that for building successful e-businesses, Internet enterprises must first identify tl1eir core competencies and derive their process layer from this core compe­tency. The advantages obtained are two fold. The enterprises can instantly achieve t.he 29 main objectives of zero-time business: instant value alignment, instant learning, instant adaptation, instant execution, and instant involvement. The second advantage is that en-terprises are able to identify the set of software components or services that project their business process. The appeal of software components comes from the tool-supported de-velopment environments that allow these components to be assembled into e-business applications [I]. Software components offer a higher abstraction to objects and the ad-vantage of building software from pre-fabricated components. A component-based meth-odology is likely to have similarities with object-oriented approaches due to the concep-tual similarities of objects and components. l Business Model •.c - - - --- ______U --- . ! Core Competency = Process Layer : L' . _____ _j' r --- ;n~;;~;~-~;;.embllng_ oHhe ____ -.-.• -::::: L_ --- ~-~-~s usl~-~ --- __ _ _ Physical Model Fig. 3 The Enterprise Process Model. 30 Corresponding methodologies may differ in that objects are primarily specified because of system analysis and design, whereas software components are likely to have been built without prior knowledge of the specific applications in which they will be used. The greater emphasis on software tools for manipulating components during devel­opment distinguishes the component-based methods from all the other development methods. In addition, a new paradigm for software is beginning to emerge based on a service model of loosely coupled network components, as in Microsoft's .Net architec­ture and the evolving industry standard for Web services, which will further simplify the development process. 8 CASE STUDY: ENGLISH TEXT DOCTOR We introduce the case study English Text Doctor (ETD), an e-business implemen­tation, as a proof-of-concept for our proposed methodology [3, 4]. ETD was developed with the process model that forms the core competency of its operation - intelligent matching of the author to the reviewer. We deployed the ETD using the Java 2 Enterprise Edition (J2EE) component architecture. The ETD provides an example for a development strategy offering more flexibility and reducing development time. Each tier of the ETD n­tier architecture maintains a specific function, reducing the overall complexity of the sys­tem. The ETD example demonstrates a compelling methodology that many enterprises can follow when developing their own e-businesses. Please refer to Fig. 4 Use Case Dia­gram- ETD, Fig. 5 Use Case Diagram-Author-Reviewer, and Fig. 6 Use Case Diagram­Administrator. 31 8.1 Background The Internet has made possible fast, easy, and cheap communications between pa1ties separated by continents, as new developments in ~- ~ SeleclsSe!Vioo ~., A Author ~ ~ ~ / Reviewer ~ login I Logout ~ R6!)islralion Fig. 5 Use Case Diagram- Author-Reviewer. 33 ~ ~ ;n ~-·-- \ ~-~ Send Promotional Reviewer (_ _ __>-·-·~> . - Update Reviewer ~ C -y ,/Administrator __ / Emails f Author ~-···r.___ \ _/ ~ Get Reviewer Details Get paper Details c Register Reviewer Fig. 6 Use Case Diagram - Administrator. The volume of correspondence is expected to rise in the future, as globalization trends are bringing the world together under one multicu]hlral umbrella - the Internet. Due to the significant increase of e-commerce transactions through millions of mobile and stationary online pottals, business oppo1turuties now exist for domestic businessmen to begin servicing inter national clients and customers in the area of English proofreading and editing. Already, people from many countries are finding themselves in positions in which they will need all sotts of peripheral language support, and the Web is becoming 34 populated with companies that are ready to offer lang1.1age support today and in the fu-ture. 8.2 Entet·prise Architecture We identified the core competency of the ETD, intelligent matching of the sub-mitted document with the reviewer, and derived the process layer. From this process layer, the components that supplied the business logic were identified. C Business Mo_d_e_' _ _ ___] - ' . --- . --- --- ·· --- . 0 0 ! Core Competency (Intelligent Matching of i ! Author With Reviewers)= Process Layer i o I ' 0 .___. ______ , r-· --- ·- . . -- --- --- --- . --- -- - . --- . ~: i Integration and assembling of the 0 i components using tools- Sun J2SDKEE1.2.1 i 0 I L ____ - - - - - --- --- --- --- --- - --- - . J ETD Fig. 7 Process Model of the ETD. 35 Please refer to Fig. 7, Process Model of the ETD, and Fig. 8, Enterprise Architec­ture of the ETD. The J2EE component model was chosen for developing, deploying, and managing the ETD. The Sun reference implementation Java 2 Standard Development Kit Entetprise Edition J2SDKEE1.2.1, which satisfies the J2EE1 .2.1 specification, was chosen as the application server. A decision was made to use the Cloudscape database (packaged with J2SDKEE1.2.1) for development purposes, and then replacing Cloudscape with the Ora­cle database for later use. The n-tier architecture was selected over the two-tier architec­ture. The n-tier architecture provides an excellent alternative to two-tier architecture and separates the various layers into multi-tier applications. In addition to the advantages of distributing programming and data throughout a network, n-tier applications have the ad­vantage that any one-tier can run on an appropriate processor or operating system plat­form and can be updated independently of the other tiers [15]. 8.3 Application Architecture The ETD architecture provides a working prototype of the eMP B2B model for its operations [3]. Please refer to figure 9, business model of the ETD. 8.3.1 The Buy Side Each author uploads his or her document to the central hub proofreading service. Currently, for demonstration purposes, the system is designed to serve four types of documents: business, technical, essay, and resume. The types of proofreading services provided are standard proofreading, standard editing, and premium editing. Essentially, 36 the front-end is the website that faces the author. Each of the au thors will be able to inter-act with these Web pages as they wish at anytime and ti·om anywhere an Internet connec-tion exists. The documents submitted to the ETD are sorted at the Central Hub according to User r --- - I J2SDKEE '1 .2. '1 I I I I --- , Click a link 1 Https request n Java M e thod - Calls I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I ~ --- JDBC calls SQL calls 1 --- -J Fig. 8 Enterprise Architecture of the ETD. 37 their (document) type and the type of service requested. The back end workflow process of the ETD hub is transparent to the buy side, allowing for easy replication and flexibility for future client interfaces. 8.3.2 The Central Hub The central hub matches the author with a reviewer. Based on the functions it per­forms, the central hub is subdivided into the author's hub, reviewer's hub, and adminis­trator's hub. 8.3.2.1 Author's Hub Once the author uploads his or her document, the document is sorted and proc­essed at the author's hub. A proofreader, who specializes in that particular document and that type of service, is matched to that document. A unique paper ID is then generated for that document. The price for the proofreading service is calculated based on the docu­ment type, the number of pages of the document, and the type of proofreading service requested. The ETD then sends emails with attached documents to the author for confir­mation, the proofreader for review, and the ETD's mail server for storage and reference. A dynamically generated mrique ID is also sent with the email. The records of the trans­action are then stored in the database for future references. 8.3.2.2 Reviewer's Hub The reviewer, after proofreading, uploads the proofread documents. The ETD, us­ing the unique ID provided, tracks the author and sends email messages with attached 38 documents back to the author, to the proofreader for confirmation, and to the ETD's mail server for storage and reference. 8.3.2.3 Administrator's Hub The administrator's hub bas a built-in mechanism which helps the administrator control the overall central administration and monitoring of ETD. These mechanisms in­clude adding, checking, updating, and deleting of proofreaders. A reminder email mecha­nism has been set up to help the administrator send reminder emails to reviewers who have not submitted their reviews by the allotted time (the maximum time assigned to a reviewer per proofreading job). The ETD also allows the administrator to check the au­thor's information and the document status. A promotional email mechanism has been setup to allow administrators to send promotional packages and documents from the ETD to the author. 111e administrator can also set the contents of the email messages sent. The ETD also allows the administrator to set the price for the proofreading service. The ETD has a built-in, custom, fo1m-based authentication login mechanism and logout mechanism for the authors, reviewers, and administrators. As the number of proofreaders and cus­tomers increases, the benefits of the BID will become apparent, since the system would be dispatching and retrieving documents across all disciplines. As the system further de­velops, the internal mechanisms of the ETD can be refined and further modified accord­ing to the special needs of the customer and requirements of the system. The overall effi­ciency of the system would increase over time as improved technology, business strategy, and control algorithms are incorporated into the orchestration process at the ETD. 39 ,. ! laptop I, ~ SuySide L_ _ ___ _ _ 1- . J L laptop ___ Adminsitrator __ _ J ____ r __ --- 1 Central Hub _J~-~:::-L ~--T~-- -{_~j --- _-_-::::._ __ .______, I ________[ I liJ!I! __ ._ --- Reviewer's Hub ~ :r, --k~J ~-~ I Up~ '~t::y --- --]-1-~;~J I__ r --- Oracle Database Fig. 9 Business Model of the ETD. 8.3.3 The Sell Side The proofreader receives his or her assigned document and unique ID by email. After the proofreading is finished, the proofreader uploads the documents using the web-site. This website is essentially the interactive end used by the reviewers for official busi-ness correspondence and transactions. Like the buy side's, the backend workflow process 40 of the ETD hub is transparent to the sell side, allowing for easy replication and flexibility for future client interfaces. The reviewer also has additional features for changing and finding customer passwords. TABLE 1 N-tier architecture of the ETD Architecture Layer Technology Browser Client JSP pages with HTML Dynamically generated presentation Servlets and Java Beans with JSP Business logic and data access CMP enterprise bean -- Backend connectivity JDBC Mailer Java Mail using a Session Bean Database Oracle Then-tier architecture of the ETD consists of the following layers [18]: • Presentation Jayer provides the intelface to the user. HTML and JSP technolo­gies are used in the ETD' s presentation tier. • Dynamically generated presentation is handled on the Web server. Technolo­gies that are used include JSP's, Java Bean (with JSP), and Servlets. • The ETD uses the CMP entity bean to handle the business logic. CMP's EJB container handles the business logic and database access required by the entity bean. This results in the bean having no SQL calls, ensuring high flexibHity. 41 The ETD can be redeployed using any database with any modifkation or changes to the code. • The backend system used in the ETD is the Oracle Database and is connected using the JDBC oracle driver. The ETD n-tier architecture supplies a business model that is easily scalable, re­usable, and maintainable. Jt allows each tier to maintain a specific function [8], reducing the overall complexity of the system. Table 1 presents then-tier architecture of the ETD. 8.4 Results Please refer to Fig. 7, Component Interaction Diagram of the ETD. The ETD has 10 EJB components and 5 Web components that provide the overall functionality for the systems. The following features are implemented in the ETD. 8.4.1 The Author's Hub 8.4.1.1 Registration Mechanism The registration mechanism has been provided to allow new authors to register with the ETD. During registration, the author's email address is set as the username, and the author is allowed to choose his password. The registration mechanism is created through JSP pages in combii1at.ion with Java Beans. The Java Bean communicates with the CMP bean that uses JDBC to access the database. 42 8.4.1.2 Change Password Mechanism When an author wishes to change his or her password, he or she can use the change password mechanism. This is handled through Servlets, which then communi­cates with the CMP bean to perform the business logic. 8.4.1.3 Forgot Password Mechanism When the author forgets his or her password, he or she can obtain the password using the forgot password mechanism. The author is required to supply the email address (the user name). Once submitted, the ETD then sends an email message with the pass­word through the mailer mechanism to the author. 8.4.1.4 Login Mechanism 111e Login is based on custom form-based authentication. When the author sub­mits his or her email address and password, the Login Servlet communicates to the data­base through the CMP and checks for authentication. If the author is authenticated, it re­directs him or her to the author's main page. If the author is not authenticated, it redirects him or her t.o an error page. Whenever an author logs in to the system, a session is struted, and session attributes are set. Every page checks for the session attributes. If the session attribute is not set or the session is ended, the author is redirected to an error page and requested to re-login. 8.4.1.5 Logout Mechanism Whenever an author logs out, the logout mechanism invalidates, or ends, the ses- 43 sion. The author will not be able to access any Web page again and has tore-login to do any further business transactions. 8.4.1.6 File Uploading Mechanism The file uploading is accomplished using the ";com.oreilly.servlet" package. Cur­rently, the author can upload four types of documents: business, technical, resume, and essays. The author can then select the type of service requjred from standard proofread­ing, standard editing, and premium editing. When a document is uploaded, the upload mechanism or Servlet initiates the following processes: • A reviewer is selected based on the type of document. • A unique key is also generated for the paper. • The prke is calculated based on the type of document and service requested. • Email messages are then sent to the author, reviewer, and ETD mail server with the attachment file and the unique key generated. • The transaction details are then written to the database. • The submitted date and the review status of the paper are set. 8.4.1.7 Author Information Update Mechanism The author can update his or her personal details using the update form. This is handled using JSP in combination with Java Bean, which accesses the database through CMP. The author can change his or her personal details except for the email address. 44 8.4.1 .8 Find Status Mechanism After uploading his or her paper, the author can then check the review status of the paper by using the find status mechanism. He or she provides the ETD with the unique ID for his or her document. He or she then receives the status of his or her paper. TI1is is accomplished using .TSP in combination with a Java Bean, which communicates with the database using the CMP entity bean. 8.4.1.9 Find Paper Infonnation Mechanism. If the author wants to find information about his or her previous transactions with the ETD, he or she can obtain the information using the find paper information mecha­nism. This is created using JSP with Serv]ets and CMP bean. 8.4.1.10 Get Author Comment Mechanism The get author comment mechanism has been created to receive feedback from the authors. This mechanism also performs an important function in the points system, which will be explained in Section E of this chapter. 8.4.2 The Reviewer's Hub 8.4.2.1 Login Mechanism. The reviewer login mechanism is similar to the author's hub login mechanism. For authentication, in addition to the email address, the reviewer has to provide his or her category-the type of document he or she specializes in. Using a similar authentication mechanism to the author's, the reviewer is redirected to the reviewer's main page. 45 8.4.2.2 Logout Mechanism The logouts are handled similarly to the logouts in the author's hub. \Vben a ses­sion is invalidated, the reviewer will not be able to access any Web page again and has to re-login to do any further business transactions. 8.4.2.3 Change Password Mechanism TI1e change password mechanism functions similarly to the author's hub change password mechanism . The reviewer can change his or her password using this feature. In addition to the email address and password, the reviewer has to provide his or her cate-· gory-the type of document he or she specializes in. 8.4.2.4 Forgot Password Mechanism In case a reviewer forgets his or her password, the forgot password mechanism allows the reviewer to find his or her password. The work process of the find password mechanism is similar to the author's hub find password mechanism. 8.4.2.5 Reviewer Uploading Mechanism After proofreading, the reviewer can upload his or her comments and feedback to the ETD. He or she provides the unique ID of the proofread document. Whenever the re­viewer uploads his or her paper, the upload Servlet initiates the following process. • The review status and U1e proofreading date of the document are updated. • The status is set to ";Yes" and the current date is set as the reviewed date. • Using the unique ID of the document, the author's email is found. 46 • Emails are then sent to the reviewer, author, and the ETD mail server. • The reviewer points are updated. 8.4.2.6 Find Reviewer Paper lnfonnation Mechanism This mechanism provides the reviewers with information about all papers that have been assigned to them. 8.4.3 The Administrator's Hub 8.4.3.1 Login Mechanism The administrator login is similar to the author's hub login. If the user name and password are authenticated, the administrator is redirected to the administrator page. 1f the login is not authenticated, the administrator is redirected to an error page and re­quested to resubmit his or her user name and password. 8.4.3.2 Logout Mechanism When the administrator logs out, the session is invalidated. He or she has to re­login to carry out any of his or her tasks. 8.4.3.3 Reviewer Register Mechanism The administrator can add new reviewers to the ETD. After providing the re­viewer infotmation in a form, the administrator can check the information entered before submitting it to the database. The administrator selects the category, which is defined as the set of document types the reviewer specializes in proofreading. The administrator sets 47 the email address (username) and the password of the reviewer. The administrator also sets the initial number of points for a reviewer based on the category of the reviewer. The reviewer register mechanism is handled using JSP pages in combination with a Servlet and the CMP entity beans. The reviewer can change the password using the change password mechanism provided in the reviewer's hub. 8.4.3.4 Update Reviewer Mechanism When the reviewer's information changes, the administrator can update or modify the reviewer's information. This is done using a combination of JSP pages with Java Bean and CMP entity bean technology. Once the administrator provides the email ad­dress and category of the reviewer, the administrator is presented with the form in which he or she can update the reviewer's information. 8.4.3.5 Delete Reviewer Mechanism When a reviewer resigns or is fired from the ETD, the administrator can delete his or her information from the ETD. To delete a reviewer, the administrator must provide the reviewer's email address and password. This mechanism is created using a combina­tion of JSP pages, Servlets, and the CMP entity bean. 8.4.3.6 Get-Reviewer-Details Mechanism The administrator can find the reviewer's information from the ETD. He or she can find the number of documents assigned to a reviewer, the points of the reviewer, and the other information that has been entered into the ETD database. 48 u s E R N T E R F A c E Registration Component AuthorCMP Component --- · --- ·J --- fr· : Cak;uate u ad A Login/Logout Pnce Co nent Reviewer CMP Component Component ~- Component C ---U·--·- --~ --- gJ-~ ~ login/Logout I --l Paper CMP Component Maller Component D Component A -gJ-- ~: PciceCMP Component B ·-·-·-· --- · --- ~]-· : Fig. 10 Component Interaction Diagram of the ETD. 8.4.3. 7 Get-Reviewer-Paper-Details Mechanism The administrator can find information about all the papers assigned to a re-viewer. This feature was created to help the administrator assist the reviewer, in case the reviewer loses his or her assigned documents. 8.4.3.8 Get-Author Details 11Je administrator can obtain the author's information from the database by pro-viding the author's email address. This mechanism was created using JSP in combination with Servlets and CMP entity bean. 49 8.4.3.9 Get-Status-of-Paper Mechanism The administrator can find the status of a document by providing the unique ID of that document. The administrator can find the submitted date of the document, the as­signed reviewer, the status of the document, and other information. 8.4.3.10 Send-Promotional-Email Mechanism When the ETD wants to send promotional packages to the registered authors, the administrator can send email messages with the attached promotional messages to the author using the mailer mechanism. This feature was created using JSP pages, in combi­nation with Servlets, the CMP-entity bean, and the session bean. 8.4.3.11 Send Reminder Email Mechanism The administrator can send reminder email to the reviewers who have not turned in their reviews within the allotted time. The time period for sending the reminder email has been set to two days (can be changed later). This mechanism was created using JSP pages in combination with Servlets, the Ernailer-JAR-session bean, and the CMP-entity bean. 8.4.3.12 Price-Setting Mechanism The price-setting mechanism provides the author with an interface to dynamically set the prices for the various services provided by the ETD. 50 8.5 Points System In order to ensure best possible service, a special point system was devised by John Tanik and implemented to ensure the quality of the proofreaders working for ETD at any given time [6, 8]. The point system provides the ETD a mechanism to address the needs of customers at varying levels of English. For example, the distribution and re­viewing process of ";basic" English documents (i.e., sent from Japanese college students with broken English) are reviewed separately from ";advanced" English documents sent from native speakers. In addition, the point system provides a mechanism for allowing ";basic" documents to be sent to less-experienced proofreaders at a lower ranking, whereas ";advanced" documents would be automatically identified and sent to high-end proofreaders at a higher ranking, perhaps at a higher rate of pay. Furthermore, the point system provides the ETD a mechanism to keep track of the performance of each and every reviewer. Additionally, based on the feedback from the author, the point system can also alter the working of the ETD to provide maximum customer satisfaction. 8.6 Steps In The Working Of The Points System When the administrator adds a new reviewer to the system, he or she assigns the initial number of points of the reviewer based on category and experience Jevel. Cur­rently, standard proofreaders receive 100 points, standard editors 1000 points, and pre­mium editor 10000 points. The administrator can also update the number of points of the reviewer using the update reviewer mechanism. When a document is submitted, the ETD selects the reviewer by matching the type of service requested for the document with the number of points of tbe reviewer. If a reviewer submits a proofread document within the 51 allotted time, his or her total points increase by a certain amount (currently by positive five points). If he or she submits the document after the allotted time, his or her points decrease by a certain amount (currently by negative fjve points). The administrator is no­tified if a reviewer submits five documents later than the allotted time. Based on the au­thor's feedback, if a reviewer receives five positive feedbacks, his or her points are in­creased by the specified amount. If a reviewer receives five negative feedbacks, his or her points are decreased by the specified amount. The administrator is notified in both cases. 8.7 Future Work • The user-interface of the document can be improved. • Security features should be improved. Currently Secure Sockets Layer (SSL) technology is used for data transmission between the user interface and the Web server. TI1e data is transmitted between the Web server and the backend through a normal connection. The SSL connection must be established for this. In addition, sensitive data must be stored in the database in encrypted form. • A credit card system for payment processing must be established. • Some features, like the reminder-email mechanism, are not automated. They must be automated for reducing the workload on the administrator. • The point system must be improved after testing its performance in real-time. • The ETD must be tested rigorously for bugs and other errors. 52 LIST OF REFERENCES [1] R. Sadasivam, Design of a Correlation Center for Digital Services, Master's The­sis, UAB, Birmingham, AI 2001. [2] R. S. Sadasivam, U. J. Tanik, and M. M. Tanik, ";A Test-Bed for the Conelation Center of Digital Services,"; Proc. of IEEE SouthEastcon '02, April 2002. [3] R. S. Sadasivarn, U. J. Tanik, and M. M. Tanik, ";A Cotrelation Center for Digital Services,"; Technical Report 200 1-10-ECE-0 12, University of Alabama at Bir­mingham, Oct. 2001. [4] · R. S. Sadasivam, U. J. Taruk, and M. M. Tanik ";A Test-Bed for the Correlation Center for Digital Services,"; Technical Repmt 2001-08-ECE-006, University of Alabama at Birmingham, Aug. 2001. [5] P. Deo, Enterprise Development Using Java and XmJ Technologies, Master's Thesis, UAB, Birmingham, AI 2001. [6] U. Tanik, A Framework for Internet Enterprise Engineering Based on T-Strategy Under Zero Time Operations, Master's Thesis, UAB, Birmingham, Al2001. [7) Leon K. Jololian, ";A Meta-Semantic Language for Smart Component-Adapters,"; PhD. Dissextation, NJIT, May 2000. [8] U. J. Tanik, M.M Tanik, and L. Jololian, ";Internet Enterprise Engineering: A Zero-time Framework based on T-Strategy,"; Proc. of IEEE SouthEastcon'Ol, Mar. 2001, pp. 263-270. [9] S. Delcambre and M.M. Tanik, ";Using Task System Templates to Support Proc­ess Description and Evolution,"; Journal of Systems Integration, 1998, KJuwer Academic Publishers. [10] K. Hafeez, Y. Zhang, and N. Malak, ";Identifying Core Competence,"; IEEE Po­tentials, April/May 2002, Dover Publications. [11] George Kozmetsky, Keri E. Pearlson, and Raymond T. Yeh, Zero Time: Provid­ing Instant Customer Value - Every Time, All the Time, July 2000, John Wiley & Sons. [12] Scott F. Wilson, Analyzing Requirements and Defining Solution Architecture, Mi­crosoft Press, May 1999. [13] B. Sculley and W.W.A.Woods, B2B Exchanges, lSI Publications, 1999. 53 (14] P. Fingar, H. Kumar, T. Shanna, Enterprise £-Commerce, Meghan-Kiffer Press, 2000. [15] George T Heineman and William T Council, Component Based Software Engi­neering, May 2001. [16] H. Man1yama, K. Tamura, N. Uramoto, XML and Java Developing Web Applica­tions, Reading, MA: Addison Wesley Longman, 1999. [17] Reference for J2EE, http://www.java.sun.com, Feb. 2002. [18] Gould, Stevens, ";Develop n-tier applications using .T2EE,"; Java World, http://www .javaworld.corn/javaworldfjw-12-2000/jw-120 1-weblogic.btml, Dec. 2001. [19] Reference for Web Services, http://www.ibm.org, Feb. 2002. [20] Reference for UDDI, http://www.uddi.org, May 2002. [21] Reference for Internet technologies like SOAP, XML, HTTP, HTML etc., http://www.w3c.org, May 2002. [22] Reference for Internet influence on e-commerce, http://www .mhbe.com/business/management/afuahtucci/sample.mhtml, May 2002. [23] Reference for business models, http://www­l. ibm.com/servers/eserver/iseries/btob/ecommerce_definition.htm, August 2001. [24] Reference for Web Services, http://www.microsoft.com/net/, May 2000 [25] Information about XML, www.Microsoft.com, 2001 54; http://uab.contentdm.oclc.org/cdm/ref/collection/uab_ece/id/143
Dostupnost: http://uab.contentdm.oclc.org/cdm/ref/collection/uab_ece/id/143
Přístupové číslo: edsbas.B933E8AC
Databáze: BASE