Customizing commercial software

Customizing commercial software

69.1 Purpose

Software customization allows for the modification of commercial software in order to meet the unique requirements of an organization. This chapter briefly describes several customization techniques.

69.2 Strengths, weaknesses, and limitations

Utilizing commercial software saves design, programming, and testing time, significantly reduces the time frame for implementing a new system, and significantly reduces system development costs. The software vendor may provide maintenance, support, upgrades, and enhancements, thus reducing maintenance costs. Commercial software is often modular, so the organization can pick the pieces that meet its needs.

Commercial software packages are written to the lowest common denominator. For complex applications, customizing commercial software may be more time consuming and costly than developing and implementing a custom system. Also, because commercial software is widely available, customizing commercial software compromises any competitive advantage the organization may have gained had it developed the application in house.

69.3 Inputs and related ideas

Before choosing between customizing commercial software and building a new system in house, management and information systems personnel must clearly understand the business problem and the system objectives. The necessary understanding is based on the results of the problem definition (Part II) and analysis (Part IV) stages of the system development life cycle. Cost/benefit analysis (Chapter 38) is an important part of the make or buy decision; note that the potential loss of a competitive advantage is a significant intangible cost. Customizing commercial software promotes early user acceptance because prototypes (Chapter 31) are easily created using the software.

One method of customizing commercial software is to create a front end (Chapters 48 and 49) to a database (Chapters 43 and 45). Another approach is to customize the software to match the organization’s forms and reports (Chapters 46 and 47). With the growing popularity of the World Wide Web, customization may also include web page design (Chapter 51).

69.4 Concepts

Software customization allows for the modification of commercial software in order to meet the unique requirements of an organization. This chapter briefly describes several customization techniques.

69.4.1 Simple customization

Some customization tools require relatively little technical expertise.

69.4.1.1 Macros

A macro is an instruction (or set of instructions) that performs a series of keystrokes or commands to carry out a specific task. Macros are created to help reduce keystrokes. The user activates the macro feature, performs the target task, and captures the sequence of keystrokes in a file. The macro is subsequently executed by pressing a hot key (or key combination), clicking an icon or a button, or selecting the macro from a menu.

For example, if a Microsoft Word for Office 97 user wants to double-space a block of text, he or she must highlight the text to be double-spaced, open the Format menu, select Paragraph, select Line spacing, and then select Double. To create an equivalent macro, the user first highlights the text to be double-spaced and then selects Macro from the Tools menu. After the user clicks on Record new macro, a window opens. In the window, the user gives the macro a name, assigns the macro to a toolbar, the keyboard, or both, and then goes through the steps required to double-space the highlighted text. When the user stops recording (by clicking Stop recording on the toolbar), the keystrokes and commands are captured and saved. Once the macro is recorded, the captured steps can be repeated by clicking on the associated toolbar icon or pressing the associated key combination.

The process of creating a macro is similar in other software tools.

69.4.1.2 Styles

A style is a font, a point size, and a set of text formatting rules. For example, a major heading might be centered in 18-point, boldface Arial.

To create a style in Microsoft Word, the user first formats and highlights the target paragraph or block of text, opens the style window (at the left of the tool bar), and types the name of the new style in the style window. An option is to select Style from the Format menu to open the style window (Figure 69.1) and either select New orModify (to change an existing style). Once a style is set, the user can select it by highlighting the affected text and selecting the style by name from the style menu. The process of creating a style is similar in other software tools.

69.4.1.3 Templates

Templates are documents that contain predefined styles and macros. For example, a user might create a template for a memo that includes the company’s logo, the date, such headings as TO, FROM, and SUBJECT, and a set of text styles. When the template is opened, the user selects the text to be changed and types the new content. The template defines the document layout, eliminating the need to retype redundant material and ensuring a consistent appearance.

69-01
Figure 69.1  The Microsoft Word style window.

To create a template, the user typically enters the initial version of the document and then saves it as (SAVE AS) a template. For example, in Microsoft Word, templates are stored as template files and subsequently accessed by opening the File menu, selecting New, and then selecting the template by name. Figure 69.2 shows a Microsoft Word memo template for a memo. The process of creating a template is similar in other software tools.

69.4.2 Advanced customization

Such customization techniques as creating a front end for a user to access, query, and/or change a database, or creating a bridge routine to convert the data from the old database to a format the new system can use require more advanced programming skills.

69.4.2.1 Visual basic

The Microsoft suite of packaged software uses the VBA (Visual Basic for Applications) programming language to add custom procedures to a standard program. Other manufacturers support Visual Basic or comparable languages.

69-02
Figure 69.2  A Microsoft Word template for a memo.

69.4.2.2 Forms

Forms (data entry screens with fill-in-the blank or select-an-option windows) are a common type of front end. (Such forms are examples of information-oriented question-answer dialogue, Chapter 49.) A set of forms might be created to allow a user to define queries or add, delete, and edit records in a database. For example, Figure 69.3 shows a form for finding a customer in a Microsoft Access database. Visual Basic is sometimes used to create and execute the forms.

69.4.2.3 Web customization

With the increasing popularity of the World Wide Web, customization often includes web page design (Chapter 51). For example, using a product such as Cold Fusion, a programmer can create custom web pages that allow the user to enter and/or modify data in the organization’s database. Web access is platform independent, so a user can browse the web site via any computer platform (e.g. Macintosh, Windows, Unix, and so on), and off-site access to the company’s Intranet is possible through any Internet service provider. Security is a major concern, however.

For example, Miami University (Oxford, Ohio) is currently creating web access to parts of its new administrative and student databases. When the system is completed, students will be able to view transcript data and register for classes through the web. Security will be implemented using encryption techniques.

69-03
Figure 69.3  A form for finding a customer in a Microsoft Access database.

Java1 is an object-oriented programming language that was designed for secure use across platforms. A programmer can write a Java applet to implement a form or perform a set of functions within the context of a web page. Another option is to build a search engine to query a database through a web site. Examples include an airfare reservation system and the Library of Congress catalogue search engine (Figure 69.4).

69.5 Key terms
Bridge —
A routine that converts the oganization’s current data to a format that is compatible with the purchased software.
Commercial software package —
A set of prewritten application programs that are commercially available for purchase or lease.
Customization —
The modification of a software package to meet an organization’s unique requirements without destroying the integrity of the package software.
Form —
A data entry screen with fill-in-the blank or select-an-option windows.

69-04
Figure 69.4  The Library of Congress catalogue search engine.

Front end routine —
A routine that accepts input data and formats it for a commercial program.
Java —
An object-oriented, platform independent programming language from Sun Microsystems.
Macro —
An instruction (or set of instructions) that performs a series of keystrokes or commands to carry out a specific task.
Style —
A font, a point size, and a set of text formatting rules.
Template —
A document that contains predefined styles and macros.
69.6 Software

Below is a list of software tools that can be used to customize commercial software. The list is not exhaustive and does not constitute a recommendation.

69.7 References

69.7.1 Web sites
1.  Java information can be found at http://sunsite.unc.edu/javafaq/javafaq.html.
69.7.2 Suggestions for additional reading
1.  Laudon, K. C. and Laudon, J. P., Essentials of Management Information Systems: Organization and Technology, Prentice-Hall, Englewood Cliffs, NJ, 1995.
2.  Lin, F., The Visual Basic Coursebook, Scott/Jones, El Granada, CA, 1997.
3.  Perry, G., Visual Basic 5 Night School, QUE (Macmillan Computer Publishing), Indianapolis, IN, 1997.

Comments

Popular posts from this blog

The Conversion Cycle:The Traditional Manufacturing Environment

The Revenue Cycle:Manual Systems

HIPO (hierarchy plus input-process-output)