|"If you fail to plan, then you plan to fail." Steven Covey|
|Think of those information systems that are highly valued in your organization. What are the factors that set them apart? How did they get to that point? Think of those systems which are consistently problematic. Again what are the factors that set them apart? How did they get to that point?|
This brings us to some important points. If you can locate those factors which contribute to highly valued or problematic information systems development, is there then a way to:
Laudon and Laudon utilize the categories of Structured Analysis,
Structured Design, Structured Programming, and Flowcharts for these methods.
There are dozens of approaches within these categories, and many which
do not fit well within any of them. We will cover some of the more popular
methods often available in Computer Aided Software Engineering (CASE) tools.
Implementing Effective Software Life Cycle Management through CASE Tools
The Macro Viewpoint
You can locate an index to approximately 400 CASE tools at the web site from the Department of Computing and Information Science of Queen's University at Kingston, Canada. http://www.qucis.queensu.ca/Software-Engineering/tools.html. Right there this should tell you something - 400 tools! Wow! How could anyone get to be knowledgeable in all the approaches that must be wrapped up in these tools. Certainly there must be some professionals in this world who are just such experts. But how will this aide you as a IS manager or Chief Information Officer. Well you could hire one of those experts and just follow what they suggest. But before you do that wouldn't it make more sense to get a feel for some of the classes of tools, and some of the types of approaches that can be taken utilizing them? The diagram below from Zackman1 presents a taxonomy for an Information Systems Architecture. This architecture provides a framework for all levels of understanding of an IS infrastructure. While you may find the diagram below difficult to read, the column headings include Data, Function, Network, and People. The Row labels include Scope, Enterprise Model, System Model, Technology Model, and Detail Representation Components.
Zackman developed this framework to help others understand the macro viewpoint in IS development, integration and maintenance -a view from all windows.
Specific CASE Methods and Tools
The Loudon & Loudon book introduces CASE tools and looks in moderate
depth at Scitor Process Charter, likely one of the most sophisticated tools
for requirements definition and dynamic flowcharting. Utilizing a CASE
tool goes hand in hand with adopting those methods which the CASE tool
implements. Some tools, such as System Architect provide a grab bag of
capability. It is then incumbent upon a user to select what segments of
capability he/she deems to be the most important.
|Have you seen some of these tools before? Do you use them in your organization? If so how would you characterize your organization's experience?|
How effective are CASE Tools?
While you may hear this question asked, it is likely more appropriate to ask two questions: 1) How effective is it to use the method implemented in the CASE tool? and 2) How much more cost effective is it to use an automated tool for applying the methodology than using a non automated approach? Likely you will only find the answer to the first question through in depth research studies on applying specific methods. The answer to the second question is that, given today's competition for IT employees and their cost per hour, it is difficult to believe that the use of any automated tool would not be worthwhile. If the decision is made to utilize a methodology, a CASE tool implementing that method is a wise investment.
Updating the systems development paradigm
Many of today's ideas about systems development stem from mainframe systems development of the 1960s. Of course the computing world has changed significantly since then. To update system development approaches, Michael Cusumano and Richard Selby, professors at M.I.T studied product development at Microsoft Corp. over a 1 and 1/2 year period2. They identified a new approach which they term 'synch-and-stabilize'. They state " users needs for many types of software are so difficult to understand, and changes in hardware and software technologies are so rapid that it is unwise to attempt to design a software system completely in advance."
Microsoft's approach is to focus managers upon features that people
will pay money for, and to limit the resources available to them such as
staff and schedule. They attempt to maximize the utility of a software
release toward an overall large audience. This contrasts with focusing
much effort upon difficult features that would likely only be utilized
by a small number of users. The development process they use is shown
Vision StatementDevelopment Phase
Feature Development in 3 or 4 MilestonesStabilization Phase
Feature Complete Code Complete
During the development stage while developers are free to work when
they desire, they must be ready to create a build / version of the product
at a specific time each day. They are also very conscious about creating
code which will not "break" or cause problems in the other modules of the
package. Some other characteristics of their systems development approach
include shared responsibility and tasks, on-site development, a common
(usually low level) language, an open culture, evolving specifications,
buffer time, and an evolving process (openness to change).
1. Zackman, J. and Sowa, J. IBM Systems Journal Vol. 31 No. 3 1992.
2. Cusumano, Michael A. "How Microsoft Makes Large Teams Work Like Small Teams." Sloan Management Review. Fall 1997. 9-20.
1. Locate a specific CASE or software project management tool offered by a vendor. List the name of the tool, what technique(s) it implements, its cost, and a testimony or two of its value. Provide a web site if available.
2. Continue with Mini Paper One.
(c) John H. Saunders 1999. Permission granted for use in courses at the University of Maryland.