<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Article Home</title>
	<atom:link href="http://www.leon-leon.com/wp/feed" rel="self" type="application/rss+xml" />
	<link>http://www.leon-leon.com/wp</link>
	<description>Articles by Alexis &#38; Mathews</description>
	<lastBuildDate>Fri, 18 Jun 2010 17:57:50 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>Brooks&#8217;s Law Revisited&#8230;</title>
		<link>http://www.leon-leon.com/wp/2007/02/11/brookss-law-revisited.html</link>
		<comments>http://www.leon-leon.com/wp/2007/02/11/brookss-law-revisited.html#comments</comments>
		<pubDate>Sun, 11 Feb 2007 17:39:06 +0000</pubDate>
		<dc:creator>Alexis</dc:creator>
				<category><![CDATA[Software Engineering]]></category>

		<guid isPermaLink="false">http://www.leon-leon.com/wp/2007/02/11/brookss-law-revisited.html</guid>
		<description><![CDATA[ABSTRACT In 1975, Frederick P. Brooks [1] stated that ‘adding manpower to a late project makes it later.’ For centuries this law has been considered as one of the most cardinal principle of software project management. This article examines whether Brooks’s Law still holds true and tries to analyze the reasons of it and the [...]]]></description>
			<content:encoded><![CDATA[<p class="level1">ABSTRACT</p>
<p>In 1975, Frederick P. Brooks [1] stated that ‘adding manpower to a late project makes it later.’ For centuries this law has been considered as one of the most cardinal principle of software project management. This article examines whether Brooks’s Law still holds true and tries to analyze the reasons of it and the relevance of Borrks’s Law in today’s software development environment.<span id="more-12"></span></p>
<p class="level1">CONTENTS</p>
<p class="toc">Introduction<br />Today’s Software Development Scenario<br />Project Cost<br />Written Communication<br />References</p>
<p class="level1">INTRODUCTION</p>
<p>In 1975, Frederick P. Brooks [1] stated that ‘<strong>adding manpower to a late project makes it later.</strong>’ For centuries this has been considered as one of the most cardinal principle of software project management.  In 1995 Brooks [2] wrote the following in the 20th Anniversary Edition of his original book “…There have even been studies evaluating the truth of Brooks’ (intentionally simplistic) Law, that adding manpower to a late software project makes it later.</p>
<p>The best treatment is that of Abdel-Hamid and Madnick…” Hamid and Madnick [3] say that <strong>adding more people to a late project always make it more costly, but it does not always cause it be completed later.</strong>  Brooks have taken into account the additional time taken to train the new people, the work lost due to repartitioning the work among increased project size, the time lost due to the increased complexity of communication, when new people are added to a late project and have stated his law that this addition will only make it later.</p>
<p>All the factors that Brooks considered are there in every project.  But in today’s software development environment we cannot ensure that all the members of a project team will remain unchanged from the start to the end of the project as the project have become more complex and large and the size and complexity are increasing. So, today the relevance of Brooks’ law is somewhat limited.</p>
<p class="level1">TODAY’S SOFTWARE DEVELOPMENT SCENARIO</p>
<p>With the advent of modern software development tools (like CASE, integrated development environments, program generators, etc.) the training time is limited to learning the functionality of the project.  This is because the employees of an organization will be trained in the software development tools and techniques that are being used in the organization.</p>
<p>Management can make sure that the people who are introduced to the project are people who have the necessary training on the tools and are familiar with the organizations standards and practices.  So the training required is limited to understanding the functionality of project.  In large projects, not all the team members have the full understanding of the system and that is not needed either.  All they require is an overview of the system and detailed understanding of their subsystem or module.  Imparting this training can be done outside the project and for this one does not have to interrupt the people who are working on the project. Also when the new people are familiar with the standards, conventions and procedures of the organization, the time lost in communication is also greatly reduced.</p>
<p>Another aspect is that, the new people can do the learning on their own; they can make use of the CBTs, project documentation and so on to make them knowledgeable and current in the work allotted to them.  So in most cases, if good people (people who are bright, who are familiar with the organization and its working environment, the tools used and who can learn thing quickly) are chosen, then the time its takes for such a person to reach full productivity is negligible compared to the additional work that can be completed by him.</p>
<p>Here the important thing is the organizational culture, practices and policies.  All the employees should be familiar with the working practices and standards of the organization, the tools used for software development, and so on so that they are interchangeable.   The higher the degree of interchangeability of the employees the less is the difficulty for the management to add new people to a project and still not suffer from time overruns.</p>
<p class="level1">PROJECT COST</p>
<p>Another aspect of this scenario is the cost—whether adding manpower to a project will increase the project cost?  If we consider the budget or the initial estimate, yes it will increase.  But that is only part of the picture.  We have to look at the project cost from the organization’s viewpoint.  There are indirect costs like the overhead costs, opportunity costs, penalties and other intangible aspects like customer goodwill, company’s reputation and so on.</p>
<p>Today, most of the project contracts have penalty clauses; i.e., if the project is not completed within the specified date, the company has to pay the client penalty for the delay. In one project that the authors have worked, the project was for an international securities clearing agency.  The deadline for the project was the 3<sup>rd</sup>of October.  This is because that was the only time during the year that the company had 3 days holiday.  So if the project didn’t go live on the 3<sup>rd</sup>of October, then the only chance to make the system changeover was in the next year.  So the contract had a penalty clause—our company will have to pay a sum of $10,000 each day for the next one year, if it missed the October 3<sup>rd</sup> deadline.  Consider a situation where the company misses the deadline.  The penalty that the company will have to pay the client is an astounding $3,650,000! This itself was a good motivating factor for us to complete the project on schedule and it is no wonder that we completed the project one month ahead of schedule.  Not all projects will have such penalty clauses, but there will be penalty for the number of days delayed or something similar.</p>
<p>Consider another scenario where a company has planned to launch a product on a particular date.  If the project is not complete by that date, the company is missing a market opportunity, may be an opportunity to be the first in the market.  Also, if the product launch is announced, people have booked for the product and if the product is not available on the promised date, the company’s reputation is at stake. Not all companies can do what Microsoft does and still mange to get away with it! So a delayed project will result in negative press reports, loss of customer good will and tainted company reputation and it will also give the competition an opportunity to grab more market share.</p>
<p class="level1">CONCLUSION</p>
<p>So, if we consider all these factors, adding manpower, people who are right for the task (as we have described earlier), need not make a project late. In fact in most of the projects the authors have worked and managed, we were able to meet the deadline or finish ahead of schedule by adding more people.  Here the only thing that one should consider is that, just adding new, untrained employees to a project will create the same effect that Brooks had predicted.  <strong>But if you choose the people who are right for the job, and infuse them into the project and if the organizational environment is conducive for interchangeability, then the project will not be late.</strong></p>
<p>Now regarding cost, yes additional manpower means additional expenditure. <strong>But when we consider the total costs (from an organizational viewpoint), the delayed completion will turn out to be more expensive in the case of tangible and intangible costs. </strong></p>
<p class="level1">REFERENCES</p>
<p>[1] Brooks, F.P., <em>The Mythical Man Month</em>, Reading, MA: Addison Wesley Publishing Company, Inc., 1975.<br />
[2] Brooks, F.P., <em>The Mythical Man Month: Essays on Software Engineering (Anniversary Edition)</em>, Reading, MA: Addison-Wesley, 1995.<br />
[3] Abdel-Hamid, T. and Madnick, S., <em>Software Project Dynamics: An Integrated Approach</em>, Englewood Cliffs, NJ: Prentice Hall, 1991.</p>
<p>Copyright &copy; Alexis Leon. Reproduced with permission.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.leon-leon.com/wp/2007/02/11/brookss-law-revisited.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>DBMS (CS 1301) – Anna University</title>
		<link>http://www.leon-leon.com/wp/2006/03/09/anna-syllabus.html</link>
		<comments>http://www.leon-leon.com/wp/2006/03/09/anna-syllabus.html#comments</comments>
		<pubDate>Thu, 09 Mar 2006 08:08:57 +0000</pubDate>
		<dc:creator>Alexis</dc:creator>
				<category><![CDATA[Database Systems]]></category>

		<guid isPermaLink="false">http://www.leon-leon.com/wp/2006/03/09/anna-syllabus.html</guid>
		<description><![CDATA[ABSTRACT This article gives the syllabus of the Anna University course in Database Management Systems (CS 1301) and explains how the book Fundamentals of Database Management Systems could be used efficiently, effectively and quickly to learn the subject fulfilling the aim and objectives of the course. CONTENTS Aim Objectives Syllbus Unit I – Introduction and [...]]]></description>
			<content:encoded><![CDATA[<p class="level1">ABSTRACT</p>
<p>This article gives the syllabus of the Anna University course in Database Management Systems (CS 1301) and explains how the book <b>Fundamentals of Database Management Systems</b> could be used efficiently, effectively and quickly to learn the subject fulfilling the aim and objectives of the course. <span id="more-10"></span></p>
<p class="level1">CONTENTS</p>
<p class="toc">
Aim<br />
Objectives<br />
Syllbus
</p>
<p class="toc1">
Unit I – Introduction and Conceptual Modeling<br />
Unit II – Relational Model<br />
Unit III – Data Storage And Query Processing<br />
Unit IV – Transaction Management<br />
Unit V – Current Trends
</p>
<p class="toc">
Summary
</p>
<p class="level1">AIM</p>
<p>This main aim of this course is to provide a strong foundation in database technology, database management systems and to provide an introduction to the current trends in database field.</p>
<p class="level1">OBJECTIVES</p>
<p>The main objectives of this course are:</p>
<ul>
<li>To learn the fundamentals of data models and to conceptualize and depict a database system using E-R diagram.</li>
<li>To make a study of SQL and relational database design.</li>
<li>To understand the internal storage structures using different file and indexing techniques which will help in physical database design.</li>
<li>To know the fundamental concepts of transaction processing—concurrency control techniques and recovery procedures.</li>
<li>To have an introductory knowledge about the emerging trends in the area of distributed DB- OO DB- Data mining and Data Warehousing and XML.</li>
</ul>
<p class="level2">Unit I – Introduction and Conceptual Modeling </p>
<p class="i1">
01. Introduction to file and database systems [Chapter 1]<br />
02. Database system structure [Chapter 1]<br />
03. Data Models [Chapter 03]
</p>
<p class="i2">
Hierarchical model [3.4]<br />
Network model [3.5]<br />
Relational Model [3.6]<br />
E-R model [3.7]
</p>
<p class="i1"<br />
04. Relational Algebra [Chapter 10]<br />
05. Relational Calculus [Chapter 11]
</p>
<p class="level2"> Unit II – Relational Model </p>
<p class="i1">
01. Introduction to SQL [Chapter 12]<br />
02. Data definition [Chapter 15]<br />
03. Queries in SQL [Chapter 16]<br />
04. Updates [Chapter 18]<br />
05. Views [Chapter 15]<br />
06. Integrity and Security [Chapters 7, 27 and 28]<br />
07. Relational Database design [Chapters 2, 7, 8 and 9]<br />
08. Functional dependences [Chapter 9]<br />
09. Normalization for Relational Databases (up to BCNF) [Chapter 9]
</p>
<p class="level2"> Unit III – Data Storage and Query Processing </p>
<p class="i1">
01. Secondary storage devices [Chapter 23]<br />
02. Record storage and primary file organization [Chapter 24]<br />
03. Operations on Files [Chapter 24]
</p>
<p class="i2">
Heap File [Forthcoming Article]<br />
Sorted Files [Forthcoming Article]
</p>
<p class="i1">
04. Indexing and Hashing [Chapter 25]
</p>
<p class="i2">
Hashing Techniques [25.3]<br />
Index structure for files [25.2]<br />
Different types of Indexes: B-Tree, B<sup>+</sup>-Tree [25.2.1.3 and 25.2.1.4]
</p>
<p class="i1">
05. Query Processing [Chapter 26]
</p>
<p class="level2"> Unit IV – Transaction Management </p>
<p class="i1">
01. Transaction Processing [Chapter 29]
</p>
<p class="i2">
Need for concurrency control [29.6]<br />
Desirable properties of transaction [29.3]<br />
Schedule and Recoverability [29.8]<br />
Serializability and Schedules [29.7]<br />
Concurrency Control [29.9]<br />
Types of Locks [29.9.1]<br />
Two-phase locking [29.9.2]<br />
Deadlock [29.9.3]<br />
Timestamp-based concurrency control [29.9.5]
</p>
<p class="i1">
02. Recovery [Chapter 30]
</p>
<p class="i2">
Recovery Concepts [30.11, 30.12 and 30.13]<br />
Recovery Techniques [30.15]<br />
Deferred Update [30.15.1]<br />
Immediate Update [30.15.2]<br />
Shadow Paging [30.15.3]
</p>
<p class="level2"> Unit V – Current Trends </p>
<p class="i1">
01. Object Oriented Databases [Chapter 33]
</p>
<p class="i2">
Need for complex data types [33.1 and 33.2]<br />
Object-oriented data model [33.3 and 33.4]<br />
Nested relations, Complex Types, Inheritance, Reference Types [33.5]
</p>
<p class="i1">
02. Distributed databases [Chapter 32]
</p>
<p class="i2">
Homogenous and heterogeneous distributed databases [32.7]<br />
Distributed data storage [32.8]
</p>
<p class="i1">
03. XML [Chapter 34]
</p>
<p class="i2">
XML Data [34.10 and 34.11]<br />
XML Document [34.1 and 34.5]<br />
XML Schema [34.1 and 34.5]<br />
Structure of XML [34.6]<br />
Querying and Transformation [34.15]
</p>
<p class="i1">
04. Data Warehousing [Chapter 36]<br />
05. Data Mining [Chapter 37]</p>
]]></content:encoded>
			<wfw:commentRss>http://www.leon-leon.com/wp/2006/03/09/anna-syllabus.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Reference Books on ERP</title>
		<link>http://www.leon-leon.com/wp/2005/12/04/reference-books-on-erp.html</link>
		<comments>http://www.leon-leon.com/wp/2005/12/04/reference-books-on-erp.html#comments</comments>
		<pubDate>Sun, 04 Dec 2005 05:33:00 +0000</pubDate>
		<dc:creator>Alexis</dc:creator>
				<category><![CDATA[ERP]]></category>

		<guid isPermaLink="false">http://www.leon-leon.com/wp/?p=5</guid>
		<description><![CDATA[Given below is a list some of the best book on ERP and the best part is that they explain the ERP concepts without depending on any particular ERP package. This list is by no means comprehensive… 01. Concepts in Enterprise Resource Planning Author(s): Ellen Monk, Bret Wagner Publisher: Course Technology Edition &#038; Year: Second, [...]]]></description>
			<content:encoded><![CDATA[<p>Given below is a list some of the best book on ERP and the best part is that they explain the ERP concepts without depending on any particular ERP package. This list is by no means comprehensive…<span id="more-5"></span></p>
<p class="level1">01. Concepts in Enterprise Resource Planning</p>
<ul>
<li><strong>Author(s)</strong>: Ellen Monk, Bret Wagner</li>
<li><strong>Publisher</strong>: Course Technology</li>
<li><strong>Edition &#038; Year</strong>: Second, 2005</li>
<li><strong>ISBN</strong>: 0619216638</li>
<li><strong>Binding &#038; Page Count</strong>: Paperback, 248 pages</li>
</ul>
<p class="level1">02. ERP: Making It Happen</p>
<ul>
<li><strong>Author(s)</strong>: Thomas F. Wallace, Michael H. Kremzar</li>
<li><strong>Publisher</strong>: Wiley</li>
<li><strong>Edition &#038; Year</strong>: 2001</li>
<li><strong>ISBN</strong>: 0471392014</li>
<li><strong>Binding &#038; Page Count</strong>: Hardcover, 384</li>
</ul>
<p class="level1">03. ERP Systems: Systems, Life Cycle, E-commerce, and Risk</p>
<ul>
<li><strong>Author(s)</strong>: Daniel E. O&#8217;Leary</li>
<li><strong>Publisher</strong>: Cambridge University Press</li>
<li><strong>Edition &#038; Year</strong>: First, 2000</li>
<li><strong>ISBN</strong>: 0521791529</li>
<li><strong>Binding &#038; Page Count</strong>: Hardcover, 232</li>
</ul>
<p class="level1">04. Enterprise Resource Planning</p>
<ul>
<li><strong>Author(s)</strong>: Mary Sumner</li>
<li><strong>Publisher</strong>: Prentice Hall</li>
<li><strong>Edition &#038; Year</strong>: First, 2004</li>
<li><strong>ISBN</strong>: 0131403435</li>
<li><strong>Binding &#038; Page Count</strong>: Paperback, 208</li>
</ul>
<p class="level1">05. ERP: The Implementation Cycle</p>
<ul>
<li><strong>Author(s)</strong>: Stephen Harwood</li>
<li><strong>Publisher</strong>: Butterworth-Heinemann</li>
<li><strong>Edition &#038; Year</strong>: First, 2003</li>
<li><strong>ISBN</strong>: 0750652071</li>
<li><strong>Binding &#038; Page Count</strong>: Paperback, 183</li>
</ul>
<p class="level1">06. E-Business and ERP: Rapid Implementation and Project Planning</p>
<ul>
<li><strong>Author(s)</strong>: Murrell G. Shields</li>
<li><strong>Publisher</strong>: Wiley</li>
<li><strong>Edition &#038; Year</strong>: First, 2001</li>
<li><strong>ISBN</strong>: 0471406775</li>
<li><strong>Binding &#038; Page Count</strong>: Hardcover, 208</li>
</ul>
<p class="level1">07. ERP: A-Z Implementer&#8217;s Guide for Success</p>
<ul>
<li><strong>Author(s)</strong>: Travis Anderegg</li>
<li><strong>Publisher</strong>: Resource Publishing</li>
<li><strong>Edition &#038; Year</strong>: First, 2000</li>
<li><strong>ISBN</strong>: 0970035217</li>
<li><strong>Binding &#038; Page Count</strong>: Paperback, 750 pages</li>
</ul>
<p class="level1">08. Mission Critical: Realizing the Promise of Enterprise Systems</p>
<ul>
<li><strong>Author(s)</strong>: Thomas H. Davenport</li>
<li><strong>Publisher</strong>: Harvard Business School Press</li>
<li><strong>Edition &#038; Year</strong>: First, 2000</li>
<li><strong>ISBN</strong>: 0875849067</li>
<li><strong>Binding &#038; Page Count</strong>: Hardcover, 352 pages</li>
</ul>
<p class="level1">09. E-Business and ERP: Transforming the Enterprise</p>
<ul>
<li><strong>Author(s)</strong>: Grant Norris, James R. Hurley, et. al.</li>
<li><strong>Publisher</strong>: Wiley</li>
<li><strong>Edition &#038; Year</strong>: First, 2000</li>
<li><strong>ISBN</strong>: 0471392081</li>
<li><strong>Binding &#038; Page Count</strong>: Hardcover, 216 pages</li>
</ul>
<p class="level1">10. Managerial Issues of Enterprise Resource Planning Systems</p>
<ul>
<li><strong>Author(s)</strong>: David Olson</li>
<li><strong>Publisher</strong>: McGraw-Hill/Irwin</li>
<li><strong>Edition &#038; Year</strong>: First, 2003</li>
<li><strong>ISBN</strong>: 0072861126</li>
<li><strong>Binding &#038; Page Count</strong>: Paperback, 192 pages</li>
</ul>
<p class="level1">11. ERP Optimization: Using Your Existing System to Support E-Business Initiatives</p>
<ul>
<li><strong>Author(s)</strong>: Cindy M. Jutras</li>
<li><strong>Publisher</strong>: CRC Press</li>
<li><strong>Edition &#038; Year</strong>: First, 2002</li>
<li><strong>ISBN</strong>: 1574443321</li>
<li><strong>Binding &#038; Page Count</strong>: Hardcover, 160 pages</li>
</ul>
<p class="level1">12. ERP: Tools, Techniques, and Applications for Integrating the Supply Chain</p>
<ul>
<li><strong>Author(s)</strong>: Carol A. Ptak, Eli Schragenheim</li>
<li><strong>Publisher</strong>: CRC Press</li>
<li><strong>Edition &#038; Year</strong>: Second, 2003</li>
<li><strong>ISBN</strong>: 1574443585</li>
<li><strong>Binding &#038; Page Count</strong>: Hardcover, 464 pages</li>
</ul>
<p class="level1">13. Integrated Learning for ERP Success: A Learning Requirements Planning Approach</p>
<ul>
<li><strong>Author(s)</strong>: Karl M. Kapp, William F. Latham and Hester N. Ford-Latham</li>
<li><strong>Publisher</strong>: St. Lucie Press</li>
<li><strong>Edition &#038; Year</strong>: First, 2001</li>
<li><strong>ISBN</strong>: 1574442961</li>
<li><strong>Binding &#038; Page Count</strong>: Hardcover, 368 pages</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.leon-leon.com/wp/2005/12/04/reference-books-on-erp.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Requirements Analyis</title>
		<link>http://www.leon-leon.com/wp/2005/12/02/requirements-analyis.html</link>
		<comments>http://www.leon-leon.com/wp/2005/12/02/requirements-analyis.html#comments</comments>
		<pubDate>Fri, 02 Dec 2005 05:36:08 +0000</pubDate>
		<dc:creator>Alexis</dc:creator>
				<category><![CDATA[Database Systems]]></category>

		<guid isPermaLink="false">http://www.leon-leon.com/wp/?p=4</guid>
		<description><![CDATA[ABSTRACT We will see the different steps of the requirements analysis in this article. Requirements analysis is one of the most important phases of the DDLC as the users&#8217; requirements are captured during this phase. If this phase is not done properly, we will end up designing a system that the user does not want [...]]]></description>
			<content:encoded><![CDATA[<p class="level1">ABSTRACT</p>
<p>We will see the different steps of the requirements analysis in this article. Requirements analysis is one of the most important phases of the DDLC as the users&#8217; requirements are captured during this phase. If this phase is not done properly, we will end up designing a system that the user does not want or something that does not satisfy the user&#8217;s business needs.<span id="more-4"></span></p>
<p class="level1">CONTENTS</p>
<p class="toc">
Introduction<br />
Business Objects<br />
Business Rules<br />
Users of Data<br />
Requirements Analysis Documentation<br />
Data Flow Diagram<br />
User Views<br />
Summary
</p>
<p class="level1">INTRODUCTION</p>
<p>The first step in implementing a database system is to find out what is required. What kind of a database is needed for the organization, what is the volume of the data that must be handled on a day-to-day basis (transaction data), how much data is to be stored in the master files, and so on. This phase is called the Requirements Analysis.</p>
<p>Requirements analysis is the first and most important stage in the DDLC. It is also the most labor-intensive for the database designer. This stage involves assessing the informational needs of an organization so that a database can be designed to meet those needs. The overall purpose of requirements analysis is to gather every bit of information needed to design a database that meets the informational needs of an organization. This is accomplished by performing a series of related tasks:</p>
<ul>
<li>Examine the existing database(s)</li>
<li>Conduct user interviews</li>
<li>Create a data flow diagram (if needed)</li>
<li>Determine user views</li>
<li>Document all findings</li>
</ul>
<p>It is critical for the designer to approach requirements analysis armed with a plan for each task in the process. Experience is the great teacher when it comes to assessing informational needs, but there is no substitute for preparation, especially for new designers. Most database designers begin requirements analysis by examining the existing database(s) to establish a framework for the remaining tasks. Analyzing how an organization stores data about its business objects, and scrutinizing its perception of how it uses stored data (for example, gaining familiarity with its business rules) provides that framework.</p>
<p class="level2">BUSINESS OBJECTS</p>
<p>Identifying an organization’s business objects is typically the first order of business during requirements analysis. Since most database design situations involve businesses that already have some sort of database in place, the first place to look for business objects is in the existing database, whether legacy, paper-based, or both.</p>
<p><b>Business objects</b> are things (both tangible and intangible) in a business environment that are related, and about which data is (or needs to be) stored. Employees, projects, customers, appointments, products, orders, suppliers&#8211;all of these are objects about which organizations store information. During requirements analysis, business objects must be identified and sorted according to subject. If two or more distinct subject categories appear, a database should be created for each. Keep in mind that every organization makes decisions about which business objects it will and will not store data about. For example, for a small business, the owners might decide they do not want to have any data about themselves (as owners/employees) stored on the company database. Business objects are converted into entities in the logical design stage. Entities, in turn, are ultimately translated into database tables with SQL. Every business object has characteristics that describe it. Customers, employees and suppliers, for example, will have names, addresses, phone numbers, and so on. Products will have names, prices, descriptions, and so on. Appointments will have times, dates, and so on. In fact, if you cannot identify two or more characteristics of a business object, there’s a strong possibility it’s not a business object at all. Figure 1 gives a list of sample business objects and their characteristics, appropriate to a wide range of databases.</p>
<p align=center><img src="http://www.leon-leon.com/figs/rqe1.gif"/></p>
<p align=center><b>Figure 1 SDLC phases and their relationship with DDLC</b></p>
<p>The characteristics of business objects are converted into the attributes of entities in the logical design stage. Attributes, in turn, are ultimately translated into table fields with SQL. Business objects relate to each other in some form or fashion. Customers place orders, employees take orders, orders are for products, products come from suppliers, and so on. Relationships between objects can be complex, so establishing relationships at this point in the design process is quite preliminary. It is important to note, however, what objects are generally related, especially in the existing database(s). As part of requirements analysis, database designers list and document the business objects stored in the client’s existing database(s), along with their characteristics and a preliminary idea of how they are related.</p>
<p class="level1">BUSINESS RULES</p>
<p>Business rules describe the business policies that apply to the data stored on a company’s databases. In other words, business rules reflect how a business perceives its use of data. Some business rules are especially important to the database designer because they can be incorporated into the logical schema of the database. There are certain constraints that designers apply to ensure that a database honors a company’s business rules. These constraints help preserve data integrity. Business-rule constraints fall into two categories—field constraints within tables, and relationship constraints between tables. There are various field constraints that can be imposed on a database to honor business rules. Consider the example below:</p>
<ul>
<li><b>Business rule:</b> We ship our products to customers in four states only: Kerala, Tamilnadu, Karnataka and Andhra Pradesh.</li>
<li><b>Field constraint:</b> These states are represented in a Customers table in a field called State as: Kerala, Tamilnadu, Karnataka and Andhra Pradesh. A constraint is placed on the State field so that only those four states are accepted into the database for that specific table.</li>
</ul>
<p>Constraints are especially common on date fields, where dates would become meaningless in a database if a product’s ship date, for example, was earlier than the customer-order date for that product, or if an employee’s termination date was prior to his/her hire date! There are also various constraints that can be placed on the relationships (links) between tables. Consider the example below:</p>
<ul>
<li><b>Business rule:</b> Every vendor must supply at least one product.</li>
<li><b>Relationship constraint:</b> The relationship between the Vendors table and Products table must be governed by a participation constraint wherein a single record in the Vendors table must be related to at least one record in the Products table.</li>
</ul>
<p>Additionally, relationship constraints dictate that certain tables in a relationship have mandatory status, while others have optional status. Documentation continues for the designer, who should be creating a list of business rules for the organization as reflected in any constraints (if applicable) placed on the existing database(s). Developing an eye for constraints is mostly a matter of experience.</p>
<p class="level1">USERS OF DATA</p>
<p>Having completed your analysis of the existing business objects and rules, the next logical step in the process of Requirements Analysis is to interview those within the organization who use the data in the database. Their collective insights into how data is used helps in revising (for example, adding to or subtracting from) the list of business objects and rules collected earlier. Users of data include an organization’s employees and managers. There are three major reasons why users of data are interviewed by database designers:</p>
<ul>
<li>To determine how data are currently being used and perceived</li>
<li>To determine whether users require additional information</li>
<li>To determine future growth requirements</li>
</ul>
<p>How an organization currently uses its data is determined not only by examining the existing database(s), but also by interviewing those who use the data. Pegasus Books, for example, has a data-entry form to process customer orders and a listing of its distributors in a Rolodex. Current informational needs of the company prescribe that distributors be considered a business object.</p>
<p>Interviewing the current users of data—the owners of the store, in this case—has uncovered this &#8220;out of sight&#8221; paper-based data sources. Rarely will an analysis of an organization’s existing database&#8211;whether legacy or paper-based&#8211;reveal the full range of an organization’s informational needs. If that were the case, the role of the database designer in creating a database would be greatly diminished. Interviewing data users about future needs enables the designer to rethink design options. For example, if the interview of owners revealed that they intended to sell Books outside India in about 18 months, the designer might refrain from placing any field constraints on address-related fields that would preclude data entry about overseas customers. Again, documentation of the interviews is extremely important. As questions arise while designing the logical schema, notes taken here are reviewed and can point the designer in the right direction if more user information is needed.</p>
<p class="level1">REQUIREMENTS ANALYSIS AND DOCUMENTATION</p>
<p>All the tasks performed during Requirements Analysis should be carefully documented, as these documents carry over into the remaining DDLC design stages. After completing Requirements Analysis, the following documents should be in hand:</p>
<ul>
<li>A preliminary list of business objects (sorted by subject), their characteristics, and how they relate to one another</li>
<li>A specification sheet for business rules (including possible constraints)</li>
<li>An assessment of future informational needs</li>
<li>A specifications sheet for user views (including needed calculations)</li>
<li>A data flow diagram (if it was determined one was needed)</li>
</ul>
<p>Several of these documents will be immediately useful for creating the database’s logical schema. The data flow diagram may come in handy later on for creating database applications and revising user views. Documentation is also important should conflicts arise later about the quality of the database design. All interested parties should have access to clear and concise documentation about the entire process of needs analysis.</p>
<p class="level1">DATA FLOW DIAGRAM</p>
<p>As part of Requirements Analysis, the designer may request organizational charts from the business, and supplement these charts with information gathered during interviews with users to assess how data flow is handled within the organization. He or she uses this information to create a data flow diagram. These diagrams are useful to the designer in establishing user views across multiple databases (and also in determining if multiple databases are needed) and in sorting business objects by subject matter.</p>
<p>While there are different styles of data flow diagrams, they are quite similar in appearance and function and are read in the very same way. The two main styles of data flow diagrams are the Yourdon/DeMarco style and the Gane &#038; Sarson style. The Yourdon/DeMarco uses squares, circles, and parallel lines to represent data handlers, processes, and databases, respectively. The Gane &#038; Sarson style, on the other hand, uses squares, round-cornered rectangles, and open-ended rectangles to represent data handlers, processes, and databases, respectively. The Yourdon/DeMarco data flow diagram (see Figure 2), for example, includes symbols that illustrate:</p>
<ul>
<li>Who handles the data (text enclosed in a square)</li>
<li>Where the data moves (arrows on the diagram)</li>
<li>Where the data are stored (text surrounded by parallel lines)</li>
<li>What is done to the data (text inside a circle)</li>
</ul>
<p align=center><img src="http://www.leon-leon.com/figs/rqe2.gif"/></p>
<p align=center><b>Figure 2 Data Flow Diagram</b></p>
<p>Figure 2 illustrates a typical Yourdon/DeMarco data flow diagram. Given below is the explanation of the different steps shown in the figure:</p>
<ol>
<li>An employee takes the customer order.</li>
<li>The order is stored in the database.</li>
<li>An employee prepares the order for shipment.</li>
<li>The order is shipped to the customer.</li>
<li>The ship date is recorded in the database.</li>
</ol>
<p>Also note the use of the symbols in the diagram:</p>
<ul>
<li>Text surrounded by a square indicates people who handle the data.</li>
<li>Arrows connecting text indicate the movement of data.</li>
<li>Text within circles indicates an operation performed on the data.</li>
<li>Text enclosed by parallel lines indicates where the data is stored.</li>
</ul>
<p>It is not always necessary to create a data flow diagram. For example, Pegasus Books is small, with only one subject database. It is not necessary to create a diagram to understand the flow of data in this instance. Views created for this company would provide specific information in a specific format, and those views could be documented without recourse to a data flow diagram. However, a large organization with several subject databases (or one very large database) will require numerous user views that draw from different databases. In this case, a data flow diagram is important for two reasons:</p>
<ul>
<li>To determine what data from which databases go into different user views</li>
<li>To assist application designers in planning database application programs</li>
</ul>
<p>The larger the organization for which you’re designing database(s), the more important it is to create a data flow diagram.</p>
<p class="level1">USER VIEWS</p>
<p>The data flow diagram, combined with specific questions posed to users of data about their needs, paves the way for the designer to create user views. User views are specific views of data created with SQL. The designer defines what data (from what database tables) are made available in these stored queries. There are three important reasons for creating user views:</p>
<ul>
<li><b>Data security</b> – User views were defined earlier in terms of data security. They specify which users are permitted access to what data in a database (or across databases). User views ensure that sensitive data remains hidden from unauthorized eyes.</li>
<li><b>Specific user needs</b> – Creating views to meet specific user needs is the flipside of the data security issue. Users must have access to certain data to perform their jobs. It is counterproductive for users to have to wade through data that is irrelevant to their work.</li>
<li><b>Calculated fields</b> – The tables actually stored in a database (called base tables) should not have any type of calculations built into their fields. The reason for this is simple: every field in a base table uniquely and independently stores data about the subject of its table. If calculation were permitted in base tables, then the data stored in some fields would depend for their values on data stored in other fields. User views, however, store their data in virtual tables that consist of fields loaded into computer memory from base tables. Virtual tables themselves are not stored in the database; rather, the definition of the view is stored and given a name. Users call up that name, and the view is created (from base tables) on the fly. When a user closes the view, it &#8220;disappears&#8221; from memory, only to be recreated the next time its name is invoked. A user view (like a database application) allows calculations to be performed on the data contained in its fields. That’s because these field calculations within virtual tables have no effect on the data stored in the base tables. One significant reason to create user views, then, is because, through calculations, views can deliver extremely useful information.</li>
</ul>
<p>User views, therefore, not only protect sensitive data within an organization; they also protect users from being inundated with useless data.</p>
<p class="level1">SUMMARY</p>
<p>We have seen the different steps of the requirements analysis. Requirements analysis is one of the most important phases of the DDLC as the users&#8217; requirements are captured during this phase. If this phase is not done properly, we will end up designing a system that the user does not want or something that does not satisfy the user&#8217;s business needs.</p>
<p class="level1">RELATED ARTICLES:</p>
<p><a href="http://www.leon-leon.com/wp/2005/11/21/ddlc.html">01. Database Development Life Cycle (DDLC)</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.leon-leon.com/wp/2005/12/02/requirements-analyis.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Database Development Life Cycle</title>
		<link>http://www.leon-leon.com/wp/2005/11/21/ddlc.html</link>
		<comments>http://www.leon-leon.com/wp/2005/11/21/ddlc.html#comments</comments>
		<pubDate>Mon, 21 Nov 2005 06:39:06 +0000</pubDate>
		<dc:creator>Alexis</dc:creator>
				<category><![CDATA[Database Systems]]></category>

		<guid isPermaLink="false">http://www.leon-leon.com/wp/?p=2</guid>
		<description><![CDATA[ABSTRACT In this article, we will see the different phases of the software development life cycle and the database development life cycle. Database development lifecycle (DDLC) is a subset of the SDLC or we can say that the DDLC is part of the SDLC. The different phases of DDLC are requirements analysis, database design, DBMS [...]]]></description>
			<content:encoded><![CDATA[<p class="level1">ABSTRACT</p>
<p>In this article, we will see the different phases of the software development life cycle and the database development life cycle. Database development lifecycle (DDLC) is a subset of the SDLC or we can say that the DDLC is part of the SDLC. The different phases of DDLC are requirements analysis, database design, DBMS evaluation, selection, implementation, data loading, testing, operation, performance tuning, and maintenance. We will also see the different activities performed in each phase and the output generated in each phase.<span id="more-2"></span></p>
<p class="level1">CONTENTS</p>
<p class="toc">
Introduction<br />
DDLC Phases
</p>
<p class="toc1">
Requirements Analysis<br />
Database Design<br />
Evaluation and Selection<br />
Logical Database Design<br />
Physical Database Design<br />
Implementation<br />
Data Loading<br />
Testing and Performance Tuning<br />
Operation<br />
Maintenance
</p>
<p class="toc">
Summary
</p>
<p class="level1">INTRODUCTION</p>
<p>The software development is that set of actions required for efficiently transforming the user’s need into an effective software solution. Software development process defines the activities required for building the software systems, incorporating the methods and practices to be adopted. It also includes the activities essential for planning the project, tracking its progress and managing the complexities of building the software.</p>
<p>The life span of software systems varies from product to product. During its lifetime, the software goes through various phases. IEEE defines software lifecycle as the period of time that starts when a software product is conceived and ends when the product is no longer available for use. The software development lifecycle (SDLC) typically includes a requirements phase, design phase, implementation phase, testing phase, operation and maintenance phase, and sometimes, retirement phase. The database development life cycle (DDLC)is a part of (or embedded inside) the software development life cycle.Figure 1 gives the various SDLC phases and their relationship with DDLC.</p>
<p align=center><img src="http://www.leon-leon.com/figs/ddlc.gif" /></p>
<p align=center><b>Figure 1 SDLC phases and their relationship with DDLC</b></p>
<p class="level1">DDLC PHASES</p>
<p>In this section we will consolidate these different database related activities and group them into phases that form part of the database development life cycle (DDLC).  The different phases of DDLC are:</p>
<ul>
<li>Requirements Analysis</li>
<li>Database Design</li>
<li>Evaluation and Selection</li>
<li>Logical Database Design</li>
<li>Physical Database Design</li>
<li>Implementation</li>
<li>Data Loading</li>
<li>Testing and Performance Tuning</li>
<li>Operation</li>
<li>Maintenance</li>
</ul>
<p>We will now see each of these steps in some detail and find out what exactly is done in each of these phases.       </p>
<p class="level2">Requirements Analysis</p>
<p>The first step in implementing a database system is to find out what is required. What kind of a database is needed for the organization, what is the volume of the data that must be handled on a day-to-day basis (transaction data), how much data is to be stored in the master files, and so on. To get these information the database analysts should spend a lot of time in the organization talking to people—the end users—assessing their day-to-day tasks and analyzing the data needs and the amount of data they process and produce. In order to get an accurate estimate of the data needs, the volume of data that is to be handled by the proposed system, the database analysts need to spend time studying the system.  Besides the data volume, the analysts should also gather detailed and accurate information on the number of users, the number of people simultaneously accessing the system, the performance expectations of the users, the rate at which the database will grow and so on. The main goals of this phase of DDLC are:</p>
<ul>
<li><b>Study the existing system</b> – Here the objective is to identify the data needs and requirements, the data volume, the performance requirements, the security issues, data access restrictions, number and types of users, the growth rate of the database and so on.</li>
<li><b>Define problems and constraints of the database environment</b> – Here the objective is to find out the problems that will have to be solved when the database is designed.  What are the areas where the designers have to be careful, in order to avoid producing a bad database design. Here the analysts should study the paper forms that are being used in the organization and then decide which data items are needed and which are redundant.  This is a challenging job as it involves converting the grievances and complaints and expectations of the end users (who will not be familiar with the intricacies of database design) into meaningful requirement definitions. Here the analysts should sit with the users, question the need and necessity of each data item, the problems that can arise if a particular data item is missing, and so on and then arrive at the problem areas, constraints and limitations of the database system.</li>
<li><b>Define the design objectives</b> – The proposed database system should help in solving the information requirements of the organization and facilitate the smooth and efficient flow of information and help in better decision-making.  Most organizations that plan to have a database usually have islands of information—each department having its own database.  These islands should be removed and the information should be centralized.   In order to do this the analysts should gather the information stored in the departmental databases and then integrate all of them to create an enterprise-wide information system. To do this—to create a centralized database that contains the information for the entire organization—the designers should have the overall view of the organizational goals and the organization’s structure.  They should also address issues like data integrity, security, concurrency, performance and so on.</li>
<li><b>Define standards and guidelines</b> – The database design standards, the naming conventions, the documentation standards, diagramming standards and other conventions that are to be followed in the DDLC phases are also formulated during this phase.</li>
</ul>
<p>Detailed discussion on the various steps involved in <a href="http://www.leon-leon.com/wp/?p=4">Requirements Analysis.</a></p>
<p class="level2">Database Design</p>
<p> In this phase the database designers will decide on the database model that is ideally suited for the organization’s needs.  The database designers will study the documents prepared by the analysts in the requirements analysis phase and then will go about developing a system that satisfies the requirements.  In this phase the designers will try to find answers to the following questions:</p>
<ul>
<li>What are the problems in the existing system and how they could be overcome?</li>
<li>What are the information needs of the different users of the system and how could the conflicting requirements be balanced?</li>
<li>What data items are required for an efficient decision-making system?</li>
<li>What are the performance requirements for the system?</li>
<li>How should the data be structured?</li>
<li>How will each user access the data?</li>
<li>How is the data entered into the database or how is the data loaded to the database?</li>
<li>How much data will be added to the database each day/week/year?</li>
</ul>
<p>First a <b>conceptual design</b> of the database is created.  In the conceptual design stage, data modeling is used to create an abstract database structure that represents the real-world scenario.  The conceptual model will be a true representation of the real world, only if the requirements analysis is properly done, as it needs a thorough understanding of the business and functional areas. At this stage the hardware or the database model that is to be used are not decided—the conceptual design is hardware and software independent.  This is important as the system can be implemented on any software/hardware platform chosen later. The different steps in the conceptual design are as follows:</p>
<ul>
<li><b>Data Analysis and Requirements Definition</b> – In this step the data items and their characteristics are determined. The data items that are required for successful information processing and decision-making are identified and their characteristics are recorded.  Questions like what kind of information is needed, what outputs (reports and queries) should the system generate, who will use the information, how and for what purpose it will be used, what are the sources of the information, etc. will be answered in this step.</li>
<li><b>Data Modeling and Normalization</b> – In this step the database designer creates a data model of the system. The business contains entities and relationships.  Each entity will have attributes.  In this step the business entities and relationships are transformed into a data model (usually an E-R model) using E-R diagrams.  Now many designers have started using data modeling using UML (Unified Modeling Language) instead of the E-R diagrams. Once the data model is created, then the data will be available in a structured form.  All objects (entities, attributes, relations and so on) are defined in a data dictionary and the data is normalized.  During the process the designer will group the data items, define the tables, identify the primary keys, define the relationships (one-to-one, one-to-many or many-to-many), create the data model, normalize the data model and so on. Once the data model is created, it is verified against the proposed system in order to ascertain that the proposed model is capable of supporting the real-world system.  So the data model is tested to find out whether the model can perform the various database operations (data loading, access, querying, insertion, modification and so on) and whether the data model takes care of the issues of data security, integrity, concurrency and so on.</li>
</ul>
<p class="level2">Evaluation and Selection</p>
<p>Once the data model is created, tested and verified, the next step is to evaluate the different database management systems and select the one that is ideally suited for the needs of the organization. Here the very important thing to be remembered is that the end-user’s representatives should be made part of the group that evaluates and selects the database system for the organization.  The main factors that influence the selection of the DBMS are:</p>
<ul>
<li><b>Cost of the System</b> – The cost includes the purchase price, cost of operation, maintenance, site license, installation, training, data migration, data conversion, etc.</li>
<li><b>Features and Tools</b> – Not all database management systems are created equal.  Some systems have more features than others. Some have a lot of data administration, querying and report writing tools as part of the system. For example, the availability of Query-By-Example (QBE), screen painters, report generators, query generators, data loaders, data dictionaries and so on make the DBMS easy-to-use and pleasant to work with.  Similarly DBA utilities, automated back-up/recovery systems, access control and management systems all make the DBMS more attractive to the buyer.  But here a word of caution: you should not go out and buy the DBMS that has the most number of features and tools. You should buy the one that has the most number of features and tools that you want.</li>
<li><b>Customer Support and Training</b> – Another factor that will influence the selection of the DBMS is the efficiency of the customer service (after sales service) that the DBMS vendor offers.  Also the ease of training, that is the ease with which users can be trained in the system is another factor.</li>
<li><b>Underlying Data Model</b> – The purchasing decision is to a very large extent influenced by the underlying data model—Hierarchical, Network, Relational, Object-Relational and so on.</li>
<li><b>Portability</b> – The DBMS selected should be portable across platforms and languages if there is a requirement for that.</li>
<li><b>Hardware Requirements</b> – The hardware requirements of the DBMS is another important factor.  If the DBMS needs high-end systems to perform efficiently, then the cost of these hardware components should also be considered while making the selection.</li>
</ul>
<p class="level2">Logical Database Design</p>
<p>Once the different database management systems are evaluated and the one best suited for the organization is selected, the next step in the DDLC is the logical database design.  Logical design is dependent on the choice of the database model that is used.  Once the database model is identified, the conceptual design can be mapped to the logical design that is tailored to the selected database model. So the logical design is software dependent.</p>
<p>In the logical design stage, the conceptual design is translated into internal model for the selected DBMS. This includes mapping all objects in the model to the specific constructs used by the selected database software.  For example, for a RDBMS, the logical design includes the design of tables, indexes, views, transactions, access privileges, etc.  Thus the logical design transforms the software-independent conceptual model into a software dependent model.</p>
<p class="level2">Physical Database Design</p>
<p>Physical database design is the process of selecting the data storage and data access characteristics of the database. The storage characteristics depends on the type of devices supported by the hardware, the type of data access methods supported by the system and the DBMS.  Physical design translates the logical design into hardware dependent one.  Physical design is particularly important for older database models like hierarchical and network models. Relational, object-relational, object-oriented and deductive models are much more insulated from the physical layer details than the older database models.  But even in the case of modern database models, physical design has great significance as a bad design can result in poor performance.  In the case of distributed databases the physical design becomes more complex as the networking and communications issues also come into the picture. </p>
<p class="level2">Implementation</p>
<p>In most databases a new database implementation requires the creation of special storage related constructs to house the end user tables.  These constructs usually include storage group, tablespaces, data files, tables and so on.</p>
<p class="level2">Data Loading</p>
<p>After creating the database, the data must be loaded into the database.  If the data to be loaded into the database is currently stored in a different system or in a different format, then the data needs to be converted and then migrated to the new database.  Data conversion and migration tools and utilities are available with almost all database management systems in the marketplace.  There are also a host of third-party tools to accomplish these tasks.  </p>
<p class="level2">Testing and Performance Tuning</p>
<p>Once the data is loaded into the database the database is tested and fine-tuned for performance, integrity, concurrent access and security constraints.  The testing and performance tuning occurs in parallel with the testing and performance tuning of the application programs.  Sometimes, the performance degradation of the database is due to the inefficient code in the application program.  So however hard the database administrator tries to fine-tune the database parameters, unless and otherwise, the application program logic is changed to a more efficient one, the performance will not improve.  So it is important that the database administrators and application programmers work hand-in-hand during this phase.</p>
<p class="level2">Operation</p>
<p>Once the data is loaded to the database and it is tested, the database is released into production (along with the application programs).  At this stage the database is considered to be operational and the database, its management, its users and the application programs together form an information system.  During the operational phase, the database is accessed by the users and application programs, new data is added, the existing data is modified and some obsolete data is deleted.  The database administrators perform the administrative tasks like performance tuning, storage space creation, access control, database back up and so on.  It is during the operational phase that the database delivers its usefulness as a critical tool in management decision-making and help in the smooth and efficient functioning of the organization.</p>
<p class="level2">Maintenance</p>
<p>Once the database is released into production, it will not remain as it was designed, New business requirements, need for new information, acquisition of new data and similar factors will make it necessary to make modifications and enhancements to the existing design.  So the database administrators will definitely receive requests for more storage space, changes in the database design, addition of tables, addition of new users, removal of users who have left the organization, changes in the access privileges of the users and so on.  The main tasks in this phase are:</p>
<ul>
<li>Database backup and recovery</li>
<li>Performance tuning</li>
<li>Database design modifications</li>
<li>Database access management</li>
<li>Database audits (access audits, usage audits, security audits, etc.)</li>
<li>Usage monitoring</li>
<li>Hardware maintenance</li>
<li>DBMS Software upgradation</li>
</ul>
<p class="level1">SUMMARY</p>
<p>We have seen the different phases of the software development life cycle and the database development life cycle. Database development lifecycle (DDLC) is a subset of the SDLC or we can say that the DDLC is part of the SDLC.  The different phases of DDLC are requirements analysis, database design, DBMS evaluation, selection, implementation, data loading, testing, operation, performance tuning, and maintenance. We saw the different activities performed in each phase and the output generated in each phase.</p>
<p class="level1">RELATED ARTICLES:</p>
<p><a href="http://www.leon-leon.com/wp/2005/12/02/requirements-analyis.html">01. Requirements Analysis</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.leon-leon.com/wp/2005/11/21/ddlc.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Dotcom to Customers&#8217;.com</title>
		<link>http://www.leon-leon.com/wp/2002/01/03/dotcom-to-customerscom.html</link>
		<comments>http://www.leon-leon.com/wp/2002/01/03/dotcom-to-customerscom.html#comments</comments>
		<pubDate>Thu, 03 Jan 2002 05:09:32 +0000</pubDate>
		<dc:creator>Alexis</dc:creator>
				<category><![CDATA[Internet and WWW]]></category>

		<guid isPermaLink="false">http://www.leon-leon.com/wp/2002/01/03/dotcom-to-customerscom.html</guid>
		<description><![CDATA[ABSTRACT In the late 1990s and in 2000 we saw the dotcom boom. In 2001 we saw the dotcom doom. This article looks at the reasons for the failures of the Internet startups and examines the various strategies to prevent such failures. In other words this article discusses the dotcom survival strategies. The article also [...]]]></description>
			<content:encoded><![CDATA[<p class="level1">ABSTRACT</p>
<p>In the late 1990s and in 2000 we saw the dotcom boom. In 2001 we saw the dotcom doom. This article looks at the reasons for the failures of the Internet startups and examines the various strategies to prevent such failures. In other words this article discusses the dotcom survival strategies. The article also takes a peak into what is in store for the dotcoms.<span id="more-13"></span></p>
<p class="level1">CONTENTS</p>
<p class="toc">Dotcom Boom<br />Dotcom Doom<br />Lack of Customer Focus<br />Customer Experience<br />Customer Experience Gap<br />Bridging Customer Experience Gap<br />Internet Economy<br />The Future</p>
<p class="level1">DOTCOM BOOM</p>
<p>In the late 1990s and in 2000 we saw the<strong> dotcom boom</strong>. We saw the emergence of thousands of new dotcom companies. We saw them spending astronomical amounts on marketing, advertisement and promotion. We saw them recruiting (most of the times poaching) personnel at fancy salaries and even fancier perks. We saw the media glorifying the entrepreneurs (the new age CEOs, they were called). We saw their pictures on the covers of myriad business magazines and their stories inside. We heard them predicting their success stories on television talk shows. We saw venture capitalists vying with one another to get their attention. We heard about the million dollar mergers and acquisitions. We saw many young entrepreneurs making more money than they could spend.</p>
<p class="level1">DOTCOM DOOM</p>
<p>In 2001 we saw the <strong>dotcom doom</strong>. All the hype, all the glitz, all the ads, all the money and most importantly most of the dotcoms were gone. Gone were the high paying jobs, the posh offices, the power lunches with venture capitalists and the media adulation. Many ventures went down, many got acquired and very few managed to survive. Established companies spent almost $40 billion last year to scoop up bankrupt dotcom companies, taking advantage of bargain prices left by the Internet shakeout to bolster their online assets. A total of $39.7 billion was spent in 2001 for 1,289 Internet companies after a brutal market downturn forced scores of Web start-ups into bankruptcy sales, said Webmergers.com, a San Francisco online marketplace for Internet companies.</p>
<p>How did this happen? Was it bad luck or was it change in government policies? Was it recession or was it some other environmental factor? In my opinion all these factors must have contributed to some extent; but most of the dotcoms failed because of bad business ideas, nonviable business plans, flawed business models, bad financial management, use of wrong technology, inadequate use of technology, overuse of technology and so on.  </p>
<p class="level1">LACK OF CUSTOMER FOCUS</p>
<p>There was one more reason—lack of customer focus—the reason that led to the downfall of more than 80% of the dotcoms. Most dotcom entrepreneurs thought that once they put up a fancy web site, spend a lot of money on advertisement and promotions, hire a lot of people, pay them fancy salaries, they can make their venture a great success. They were wrong; dead wrong.  What they failed to realize was that they needed customers to succeed. They forgot the fact that customers just won’t surf into their shops. They failed to realize the fact that, they need to device strategies and formulate plans to make people visit the shops, turn the visitors into buyers and convert the one-time buyers into loyal customers. <strong>On the Internet, where the next shop is just a ‘mouse-click’ away; the customer is really the KING</strong>. </p>
<p>Customers can provide the revenues needed to attain profitability. Customers can give the word-of-mouth marketing to drive traffic. Customers can give the feedback needed to continually improve the website. Customers are a dotcom’s most important asset. To survive dotcoms must turn to their most important asset—<strong>CUSTOMERS</strong>. In other words, serve the customer and the money and profits will follow. Serving the consumer is the only business model that has a 100% guarantee of success. </p>
<p class="level1">CUSTOMER EXPERIENCE</p>
<p>Where does a dotcom connect with its customers? The dotcom can connect with its customers during all activities of the online shopping and fulfillment. This includes everything from surfing the web site, to the shopping and buying process, to the fulfillment of products and even to the after sales service. The customer experience is the combination of everything the customer sees, clicks, reads or otherwise interacts with on the web site. The quality of your customers&#8217; experience when they do business with you determines brand loyalty. And the quality of that experience is based on several factors, including a thoughtful Web design, streamlined business processes, great customer service and flawless execution. <strong>The customer experience is the key to dotcom survival.</strong> </p>
<p>One way to improving the customer experience is to shift the business strategy to focus on the customer—solving customers’ problems, recognizing the limitations of technology (both on the web site and the at the customer end) and achieving simplicity in all respects. </p>
<p class="level1">CUSTOMER EXPERIENCE GAP</p>
<p>As the Web has become increasingly popular and accessible, the number of people who are online have grown exponentially. In the early days of e-commerce, mainly computer experts used the web and the web sites contained only text and graphics. Today for a customer base of new users, the Web serves up a complicated soup of frames, Java, cookies, plug-ins, banners, flash movies, secure servers, streaming audio, streaming video and so on. </p>
<p>Clearly, there is a difference between what the Web gives its customers and what they actually want. Customers want simplicity, but the Web offers complexity. Customers want service, but the Web offers technology. Customers want to accomplish their goal, but the Web offers “features.” In each case the Web doesn’t offer the experience that the customer wants. This phenomenon is called the customer experience gap—the difference between what customers want and what they get. There is a widening customer experience gap online. To survive, dotcoms must bridge the customer experience gap. </p>
<p class="level1">BRIDGING CUSTOMER EXPERIENCE GAP</p>
<p>In order to bridge the customer experience gap the dotcoms should make it easy for customers to find and buy products they want from the site. This may sound obvious, but many top e-commerce sites still make it too difficult for customers to find and buy their products. Another way to improve the quality of the customer service is offering personalized service to the loyal customers. A satisfied customer is worth his/her weight in gold. In addition to the revenue from the customer’s purchases, a happy customer also brings free word-of-mouth exposure—bringing even more customers to the site.  Satisfied customers bring loyal, buying customers who want to bring in more loyal, buying customers. Thus by taking care of the needs of a single customer you are starting a chain reaction that will increase site traffic, number of visitors, number of buyers and definitely the revenues. But this has a negative side too. A dissatisfied customer will not only abandon the site permanently but also generate negative publicity by telling about the experience to others. An e-business may lose the lifetime value of several customers by providing one bad experience. With plenty of competing sites to visit, customers have little incentive to return to a site that has failed to meet their needs. One must always be on the alert—reading customer mails, responding to customer queries, suggestions and grievances, taking corrective actions before problems escalate, getting feedback from customers, and constantly monitoring the quality of service and customer care.  Ensuring customer satisfaction is an ongoing process and everyone in the organization should be involved in the endeavor. </p>
<p>The art of merchandising or merchandise planning has enjoyed decades of refinement in the traditional brick and mortar shops. Today, e-commerce retailers have just begun to figure out how to effectively merchandise online. One way to think about online merchandising is to compare it to what works best offline—the salesperson. A literal translation of the live salesperson to the Internet usually creates a bad customer experience. By not recognizing the technological constraints of the medium, sites that have tried to emulate the salesperson with “virtual sales assistants ”have mostly failed in their merchandising attempts.</p>
<p>A Forrester report (“The Promotion Commotion,” April 2000) found that <strong>targeting</strong> is the most important factor of success for online promotions. For perfect targeting, the retailer needs to have complete information on the specific shopper, including past purchase patterns, known needs, and even unarticulated desires. Obviously it is unreasonable for e-tailers to expect to capture that much information about their customers. But with a little common sense the online merchants can target their customers.  They can study the purchasing patterns and offer similar products. They can organize occasion-based sales programs (for example, Christmas sales, Diwali sales, Valentine’s Day sales, etc.). The merchants can offer products suitable for each such occasion or season along with the regular products that the shop is offering. Special discounts, promotional offers, gifts, etc. can be used to attract more customers. The merchants can target the markets that make sense for their business and even can look for well-defined segments within that market. They must make sure that the marketing budget is being spent on attracting, retaining, and managing actual customers, and not just creating brand awareness. While advertising, spend well within the means. E-mail lists costs only a fraction of the cost of a contest or newspaper/magazine advertisement, but can be much more effective. Merchants can generate more revenue by a focused e-mail campaign than by placing a newspaper advertisement. </p>
<p>Another important aspect where most merchants fail is in effectively communicating with the customers.  In the brick and mortar variety, face-to-face communication is possible. But in the online form, most of the communication is through e-mail. From order confirmations to responding to customer queries and complaints, e-mail is an increasingly important aspect of the customer experience. By giving timely order confirmations, order status reports, shipment intimations, and by responding promptly to customer complaints, the online merchant can make use of e-mail in improving the customer satisfaction.  </p>
<p>Last but not the least, the online merchant should build trust among the customers.  The goal should be building a reputation and not short-term profits.  The shop should not engage in unfair trading practices. Cheating on prices, hiding the profits in exorbitant shipping charges, misleading the customers using currency conversion techniques, cheating the customer by displaying one product and then sending another, all these can bring in quick profits. But these strategies will definitely fail in the long run as the customers will soon find out these tricks and the word will spread like a bush fire (thanks to technology—e-mails, newsletters, newsgroups, bulletin boards, etc.) and soon the business will have to close. </p>
<p class="level1">INTERNET ECONOMY</p>
<p>So the ‘Internet Economy’ is really just the ‘Old Economy’ of setting up a business on a new street. Online retailers are still retailers. Sure it is a little different, they have to use technology and use it sensibly. But they have to follow the same business and economic rules as their brick and mortar peers. They still have to do research, plan, manage and finance carefully. They have to keep in mind the fact that the customers are their real assets and keeping the customers satisfied with quality products, bargain prices, good customer care, timely shipments, and fair and honest business practices is the secret for online success too. </p>
<p class="level1">THE FUTURE&#8230;</p>
<p>It is 2002. What is in store for the dotcoms? Is it all over for them? Yes the bubble has burst; the boom is long gone. The venture capitalists are not as enthusiastic and funding is difficult to get.  Survey after survey predicts that the future is bleak for dotcoms. But there is still scope and hope for good business ideas. The dotcoms that plan their operations well, invest wisely in technology, manage the finances efficiently, promote effectively, sell high quality products or services and most importantly keep the customers happy and satisfied can still get off to a good start, buck the trend, thrive, survive, and grow. </p>
<p>Copyright &copy; Alexis Leon. Reproduced with permission.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.leon-leon.com/wp/2002/01/03/dotcom-to-customerscom.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

