<?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>Learn Software Development &#187; Types</title>
	<atom:link href="http://learnsoftwareprocesses.com/category/types/feed/" rel="self" type="application/rss+xml" />
	<link>http://learnsoftwareprocesses.com</link>
	<description>All about the processes involved in software development</description>
	<lastBuildDate>Sun, 20 May 2012 19:17:40 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Introduction to Multimedia Databases</title>
		<link>http://learnsoftwareprocesses.com/2009/08/14/introduction-to-multimedia-databases/</link>
		<comments>http://learnsoftwareprocesses.com/2009/08/14/introduction-to-multimedia-databases/#comments</comments>
		<pubDate>Fri, 14 Aug 2009 16:41:16 +0000</pubDate>
		<dc:creator>ashish</dc:creator>
				<category><![CDATA[Data]]></category>
		<category><![CDATA[Databases]]></category>
		<category><![CDATA[Multimedia]]></category>
		<category><![CDATA[Types]]></category>
		<category><![CDATA[Contents]]></category>
		<category><![CDATA[Multimedia Databases]]></category>
		<category><![CDATA[Types of MMDB]]></category>

		<guid isPermaLink="false">http://learnsoftwareprocesses.com/?p=301</guid>
		<description><![CDATA[<p>Multimedia data typically means digital images, audio, video, animation and graphics together with text data. The acquisition, generation, storage and processing of multimedia data in computers and transmission over networks have grown tremendously in the recent past. Multimedia data are blessed with a number of exciting features. They can provide more effective dissemination of information [...]]]></description>
			<content:encoded><![CDATA[<p>Multimedia data typically means digital images, audio, video, animation and graphics together with text data. The acquisition, generation, storage and processing of multimedia data in computers and transmission over networks have grown tremendously in the recent past. Multimedia data are blessed with a number of exciting features. They can provide more effective dissemination of information in science, engineering , medicine, modern biology, and social sciences. It also facilitates the development of new paradigms in distance learning, and interactive personal and group entertainment. It loosely fall into three main categories:<br />
    * Static media (time-independent, i.e. images and handwriting).<br />
    * Dynamic media (time-dependent, i.e. video and sound bytes).<br />
    * Dimensional media (i.e. 3D games or computer-aided drafting programs- CAD). </p>
<p>TYPES OF MULTIMEDIA DATABASES :<br />
There are numerous different types of multimedia databases :<br />
* The Authentication Multimedia Database (also known as a Verification Multimedia Database, i.e. retina scanning), is a 1:1 data comparison.<br />
* The Identification Multimedia Database is a data comparison of one-to-many (i.e. passwords and personal identification numbers.<br />
* A newly-emerging type of multimedia database, is the Biometrics Multimedia Database; which specializes in automatic human verification based on the algorithms of their behavioral or physiological profile. </p>
<p>CONTENTS OF MULTIMEDIA DATABASES :<br />
A multimedia database needs to manage several different types of information pertaining to the actual multimedia data. They are:<br />
* Media data &#8211; This is the actual data representing images, audio, video that are captured, digitized, processes, compressed and stored.<br />
* Media format data &#8211; This contains information pertaining to the format of the media data after it goes through the acquisition, processing, and encoding phases. For instance, this consists of information such as the sampling rate, resolution, frame rate, encoding scheme etc.<br />
* Media keyword data &#8211; This contains the keyword descriptions, usually relating to the generation of the media data. For example, for a video, this might include the date, time, and place of recording , the person who recorded, the scene that is recorded, etc This is also called as content descriptive data.<br />
* Media feature data &#8211; This contains the features derived from the media data. A feature characterizes the media contents. For example, this could contain information about the distribution of colors, the kinds of textures and the different shapes present in an image. This is also referred to as content dependent data.</p>
<div class="addthis_toolbox addthis_default_style " addthis:url='http://learnsoftwareprocesses.com/2009/08/14/introduction-to-multimedia-databases/' addthis:title='Introduction to Multimedia Databases '  ><a class="addthis_button_facebook_like" fb:like:layout="button_count"></a><a class="addthis_button_tweet"></a><a class="addthis_button_google_plusone" g:plusone:size="medium"></a><a class="addthis_counter addthis_pill_style"></a></div>]]></content:encoded>
			<wfw:commentRss>http://learnsoftwareprocesses.com/2009/08/14/introduction-to-multimedia-databases/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Database System Concepts &#8211; Data Model, Schemas and Database state</title>
		<link>http://learnsoftwareprocesses.com/2009/08/04/database-system-concepts-data-model-schemas-and-database-state/</link>
		<comments>http://learnsoftwareprocesses.com/2009/08/04/database-system-concepts-data-model-schemas-and-database-state/#comments</comments>
		<pubDate>Tue, 04 Aug 2009 03:05:29 +0000</pubDate>
		<dc:creator>ashish</dc:creator>
				<category><![CDATA[Data]]></category>
		<category><![CDATA[Data Model]]></category>
		<category><![CDATA[Databases]]></category>
		<category><![CDATA[Instance]]></category>
		<category><![CDATA[Model]]></category>
		<category><![CDATA[Schemas]]></category>
		<category><![CDATA[State]]></category>
		<category><![CDATA[Types]]></category>
		<category><![CDATA[Categories]]></category>
		<category><![CDATA[Conceptual data model]]></category>
		<category><![CDATA[Database state]]></category>
		<category><![CDATA[physical data model]]></category>
		<category><![CDATA[representational data model]]></category>

		<guid isPermaLink="false">http://learnsoftwareprocesses.com/?p=279</guid>
		<description><![CDATA[<p>A data model is a collection of concepts that can be used to describe the structure of a database. By structure of the database we mean the data types, relationships, and constraints that should hold on the data. Most data models also include a set of basic operations for specifying retrievals and updates on database.</p> [...]]]></description>
			<content:encoded><![CDATA[<p>A data model is a collection of concepts that can be used to describe the structure of a database. By structure of the database we mean the data types, relationships, and constraints that should hold on the data. Most data models also include a set of basic operations for specifying retrievals and updates on database.</p>
<p>Categories of Data Models:<br />
- High level or Conceptual data models : These models provide concepts that are close to the way many users perceive data. They use concepts such as entities, attributes, and relationships. An entity represents a real-world object or concept such as an employee or a project. An attribute represents property of interest that describes an entity such as employee&#8217;s salary or name. A relationship represents an interaction among the entities.<br />
- Representational data models : These models provides concept that may be understood by end users but that are not too far removed from the way data is organized within the computer. They are used most frequently in traditional commercial DBMSs and they include the widely used relational model as well as the network and hierarchical models. These models represent data by using record structures and hence are sometimes called record-based data models.<br />
- Low level or Physical data models : These models provide concepts that describe the details of how the data is stored in the computer by representing information such as record formats, record orderings, and access paths. An access path is a structure that makes the search for particular database records efficient.</p>
<p>Schemas:<br />
The description of a database in any data model is called the database schema which is specified during the database design and is not expected to change frequently. A displayed is called a schema diagram.</p>
<p><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_Ft_K4jmqJjk/SnaBHIGtBxI/AAAAAAAAANc/4y5ZxiTAHMQ/s1600-h/schema+diagram.gif"><img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 377px; height: 212px;" src="http://2.bp.blogspot.com/_Ft_K4jmqJjk/SnaBHIGtBxI/AAAAAAAAANc/4y5ZxiTAHMQ/s400/schema+diagram.gif" border="0" alt="Schema Diagram" id="BLOGGER_PHOTO_ID_5365617965493192466" /></a><br />
A schema diagram displays only some aspects of a schema, such as names of record types and data items, and some types of constraints.</p>
<p>Database State or Iinstance: The actual data in a database changes every time data is inserted, deleted, or modified. The data in the database at a particular moment in time is called a database state or a snapshot. It is also called the current set of occurrences or instances in the database.</p>
<p>Distinguish between Database State and Database Schema:<br />
When a new database is defined, we specify its database schema only to the DBMS. At this point, the corresponding database state is empty state. The initial state of the database is got when the database is first populated or loaded with the initial data. From then on, every time an update operation is applied to the database, we get another database state.</p>
<div class="addthis_toolbox addthis_default_style " addthis:url='http://learnsoftwareprocesses.com/2009/08/04/database-system-concepts-data-model-schemas-and-database-state/' addthis:title='Database System Concepts &#8211; Data Model, Schemas and Database state '  ><a class="addthis_button_facebook_like" fb:like:layout="button_count"></a><a class="addthis_button_tweet"></a><a class="addthis_button_google_plusone" g:plusone:size="medium"></a><a class="addthis_counter addthis_pill_style"></a></div>]]></content:encoded>
			<wfw:commentRss>http://learnsoftwareprocesses.com/2009/08/04/database-system-concepts-data-model-schemas-and-database-state/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Introduction to Databases</title>
		<link>http://learnsoftwareprocesses.com/2009/08/04/introduction-to-databases/</link>
		<comments>http://learnsoftwareprocesses.com/2009/08/04/introduction-to-databases/#comments</comments>
		<pubDate>Tue, 04 Aug 2009 02:58:00 +0000</pubDate>
		<dc:creator>ashish</dc:creator>
				<category><![CDATA[Benefits]]></category>
		<category><![CDATA[Data]]></category>
		<category><![CDATA[Databases]]></category>
		<category><![CDATA[File processing systems]]></category>
		<category><![CDATA[Types]]></category>
		<category><![CDATA[Advantages]]></category>
		<category><![CDATA[introduction]]></category>
		<category><![CDATA[Properties]]></category>
		<category><![CDATA[traditional]]></category>

		<guid isPermaLink="false">http://learnsoftwareprocesses.com/?p=277</guid>
		<description><![CDATA[<p>Databases play an important role in almost all areas where they are used including business, engineering, medicine, law, education, and library science, to name a few. A database is a collection of related data, where data means recorded facts. A typical database represents some aspect of the real world and is used for specific purposes [...]]]></description>
			<content:encoded><![CDATA[<p>Databases play an important role in almost all areas where they are used including business, engineering, medicine, law, education, and library science, to name a few.<br />
A database is a collection of related data, where data means recorded facts. A typical database represents some aspect of the real world and is used for specific purposes by one or more groups of users. Databases are not specific to computers. Examples of non-computerized databases abound: phone book, dictionaries, almanacs, etc. A database has the following implicit properties :<br />
1. A database represents some aspect of the real world.<br />
2. A database is a logically coherent collection of data with some inherent meaning.<br />
3. A databse is designed, built, and populated with data for a specific purpose.<br />
4. A databse can be of any size and of varying complexity.<br />
5. A database may be generated and maintained manually or it may be computerized.<br />
A database management system (DBMS) is a collection of programs that enables users to create and maintain a database. The DBMS is a general-purpose software system that facilitates the process of defining, construction, and manipulating databases for different applications.<br />
Defining a database involves specifying the data types, structures, and constraints for the data to be stored in the database.<br />
Constructing a database is the process of storing the data itself on some storage medium that is controlled by the DBMS.<br />
Manipulating a database includes such functions as querying the database to retrieve specific data, updating the database and generating the reports from the data. </p>
<p><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_Ft_K4jmqJjk/SnZvbLtqAYI/AAAAAAAAANU/32kpHiSixgM/s1600-h/dbsystem+env.gif"><img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 326px; height: 362px;" src="http://3.bp.blogspot.com/_Ft_K4jmqJjk/SnZvbLtqAYI/AAAAAAAAANU/32kpHiSixgM/s400/dbsystem+env.gif" border="0" alt="Database System" id="BLOGGER_PHOTO_ID_5365598518849962370" /></a> </p>
<p>CHARACTERSTICS THAT DISTINGUISH DATABASE APPROACH FROM TRADITIONAL FILE-PROCESSING APPLICATIONS :<br />
- Existence of a catalog : It contains information such as structure of each file, the type and storage format of each data item and various constraints on the data. The information stored in catalog is called meta-data.<br />
- Program data independence : In traditional file processing, the structure of a file is embedded in the access programs, so any changes to the structure of a file may require changing all programs that access this file. By contrast, the structure of data files is stored in DBMS catalog separately from access programs. This property is called program data independence.<br />
- Program operation independence: Users can define operations on data as part of database applications. An operation is specified in two parts &#8211; interface of operation : includes operation name and data types of its arguments, implementation of operation : specified separately and can be changed without affecting the interface. This is called<br />
program operation independence.<br />
- Data abstraction : The characteristic that allows program data independence and program operation independence is called data abstraction.<br />
- Support of multiple user views.<br />
- Sharing of data among multiple transactions.</p>
<p>Main Categories of Database users are :<br />
- Administrators.<br />
- Designers.<br />
- End users.<br />
- System analysts and application programmers.<br />
- DBMS system designers and implementers.<br />
- Tool Developers.<br />
- Operators and maintenance personnel.</p>
<p>Advantages of using Databases :<br />
- Potential for enforcing standards.<br />
- Reduced application development time.<br />
- Flexibility.<br />
- Availability of up-to-date information to all users.<br />
- Economies of sale.</p>
<div class="addthis_toolbox addthis_default_style " addthis:url='http://learnsoftwareprocesses.com/2009/08/04/introduction-to-databases/' addthis:title='Introduction to Databases '  ><a class="addthis_button_facebook_like" fb:like:layout="button_count"></a><a class="addthis_button_tweet"></a><a class="addthis_button_google_plusone" g:plusone:size="medium"></a><a class="addthis_counter addthis_pill_style"></a></div>]]></content:encoded>
			<wfw:commentRss>http://learnsoftwareprocesses.com/2009/08/04/introduction-to-databases/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Types of testing</title>
		<link>http://learnsoftwareprocesses.com/2008/12/16/types-of-testing/</link>
		<comments>http://learnsoftwareprocesses.com/2008/12/16/types-of-testing/#comments</comments>
		<pubDate>Tue, 16 Dec 2008 18:22:49 +0000</pubDate>
		<dc:creator>ashish</dc:creator>
				<category><![CDATA[Techniques]]></category>
		<category><![CDATA[Terms]]></category>
		<category><![CDATA[Testing]]></category>
		<category><![CDATA[Types]]></category>

		<guid isPermaLink="false">http://learnsoftwareprocesses.com/2008/12/16/types-of-testing/</guid>
		<description><![CDATA[<p>What are the different types of testing that one normally comes across ? If there are others besides these, please add in the comments.</p> <p>• Black box testing &#8211; This is a testing method that is not based on any knowledge of internal design or code. Tests are based on requirements and functionality. • White [...]]]></description>
			<content:encoded><![CDATA[<p>What are the different types of testing that one normally comes across ? If there are others besides these, please add in the comments.</p>
<p>• Black box testing &#8211; This is a testing method that is not based on any knowledge of internal design or code. Tests are based on requirements and functionality.<br />
• White box testing &#8211; based on knowledge of the internal logic of an application&#8217;s code. Tests are based on coverage of code statements, branches, paths, conditions. This is more like testing based on code, and is typically handled by a person who has knowledge of coding.<br />
Black box and White Box testing are the 2 most well know types of testing.<br />
In addition, there are testing carried out at different stages, such as unit, integration and system testing.<br />
• Unit testing &#8211; the most &#8216;micro&#8217; scale of testing; to test particular functions or code modules. This is testing that happens at the earliest stage, and can be done by either the programmer or by testers (further stages of testing are typically not done by programmers). Not always easily done unless the application has a well-designed architecture with tight code; may require developing test driver modules or test harnesses. It could also be used to denote something as basic as testing each field to see whether the field level validations are okay.<br />
• Incremental integration testing &#8211; this stage of testing means the continuous testing of an application as and when new functionality is added to the application; the testing requires that various aspects of an application&#8217;s functionality be independent enough to work separately before all parts of the program are completed, or that test drivers be developed as needed; this testing is done by programmers or by testers.<br />
• Integration testing &#8211; This form of testing implies the testing of the combined parts of an application to determine if they function together correctly. When we say combined parts, this can mean code modules, individual applications, client and server applications on a network, etc. Integration testing can reveal whether parts that seem to be well built by themselves work properly when they are all fitted together. Integration testing should be done by testers.<br />
• Functional testing &#8211; Functional testing means testing of Black-box type testing geared to functional requirements of an application; functional testing should be done by testers. Functional testing is geared to validate the work flows that happen in the project.<br />
• System testing &#8211; System testing is a black-box type of testing that is based on testing against individual overall requirements specifications; the testing covers all combined parts of a system and is meant to validate the marketing requirements for the project.<br />
• End-to-end testing &#8211; End to end testing sounds very similar to system testing just with the name itself, and is similar to system testing. The testing operates at the &#8216;macro&#8217; end of the test scale, at the big picture level ; end-to-end testing involves testing of the complete application environment in a situation that simulates the actual real-world use, the final use, (example, interacting with a database, using network communications, or interacting with other dependencies in the system such as hardware, applications, or systems if appropriate).<br />
• Sanity testing &#8211; Sanity testing, as it sounds like, is typically an initial testing effort to determine if a new software version is performing well enough to accept it for a major testing effort. This sort of testing could also happen on a regular basis to ensure that regular builds are worth testing. For example, if the new software is crashing systems every 5 minutes, bogging down systems to a crawl, or destroying databases, the software may not be in a &#8216;sane&#8217; enough condition to warrant further testing in its current state. Sanity testing is not supposed to be a comprehensive testing.<br />
• Regression testing &#8211; Regression testing plays an important part of the bug life cycle. Regression testing involves re-testing after fixes or modifications of the software or its environment. It can be difficult to determine how much re-testing is needed, especially near the end of the development cycle, but there should never be an attempt to try and minimise the need for regression testing. Automated testing tools can be especially useful for this type of testing.<br />
• Acceptance testing &#8211; Acceptance testing, as the name suggests, is the final testing based on specifications of the end-user or customer, or based on use by end-users/customers over some limited period of time. This type of testing can also mean the make or break situation for a project to be accepted.<br />
• Load testing &#8211; Again, as the name suggests, load testing means testing an application under heavy loads, such as testing of a web site under a range of loads to determine at what point the system&#8217;s response time degrades or fails. This is part of a system to ensure that even when a system is under heavy load, it will not suddenly collapse, and can help in infrastructure planning.<br />
• Stress testing &#8211; Stress testing is a term often used interchangeably with &#8216;load&#8217; and &#8216;performance&#8217; testing. Stress testing is typically used to describe conducting tests such as system functional testing while under unusually heavy loads, heavy repetition of certain actions or inputs, input of large numerical values, large complex queries to a database system, etc.<br />
• Performance testing &#8211; Performance testing is a term often used interchangeably with &#8216;stress&#8217; and &#8216;load&#8217; testing. Ideally &#8216;performance&#8217; testing (and any other &#8216;type&#8217; of testing) is defined in requirements documentation or QA or Test Plans. Performance testing is also used to determine the time periods involved for certain operations to take place, such as launching of the application, opening of files, etc.<br />
• Usability testing &#8211; Usability testing is becoming more critical with a higher focus on usability. Usability testing means testing for &#8216;user-friendliness&#8217;. Clearly this is subjective, and will depend on the targeted end-user or customer. User interviews, surveys, video recording of user sessions, and other techniques can be used. This is done ideally through the involvement of specialist usability people.<br />
• Install/uninstall testing &#8211; testing of full, partial, or upgrade install/uninstall processes. Given that the first thing users see is an installer, how the installer works, whether people are able to get clarity, and so on are some of the measurements through installer testing. In addition, the install / uninstall / repair etc should work smoothly.<br />
• Recovery testing &#8211; One does not like to anticipate such problems, but given that crashes or other failure can occur, recovery testing measures how well a system recovers from crashes, hardware failures, or other catastrophic problems.<br />
• Security testing &#8211; Security testing is getting more important now, with the focus on increased hacking, and security measures to prevent data loss. Security testing determines how well the system protects against unauthorized internal or external access, willful damage, etc and may require sophisticated testing techniques.<br />
• Compatibility testing &#8211; Compatibility testing determines how well the software performs in a particular hardware/software/operating system/network/etc environment.<br />
• Exploratory testing &#8211; This type of testing is often employed in cases where we need to have a creative, informal software test that is not based on formal test plans or test cases; testers may be learning the software as they test it, common in situations where the software being developed is of a new type.<br />
• Ad-hoc testing &#8211; similar to exploratory testing, but often taken to mean that the testers have significant understanding of the software before testing it.<br />
• User acceptance testing &#8211; determining if software is satisfactory to an end-user or customer. Similar to the acceptance test described above.<br />
• Comparison testing &#8211; Comparison testing means comparing software weaknesses and strengths to competing products, very important to evaluate your market, and to determine which are the features you need to develop.<br />
• Alpha testing &#8211; testing of an application when development is nearing completion; minor design changes may still be made as a result of such testing. Typically done by end-users or others, not by programmers or testers.<br />
• Beta testing &#8211; Also called pre-release testing, it is the testing when development and testing are essentially completed and final bugs and problems need to be found before final release. Typically done by end-users or others, not by programmers or testers. The advantage is that you can test with users, as well as get verification about software compatibility on a wide range of devices.<br />
• Mutation testing &#8211; a method for determining if a set of test data or test cases is useful, by deliberately introducing various code changes (&#8216;bugs&#8217;) and retesting with the original test data/cases to determine if the &#8216;bugs&#8217; are detected. Proper implementation requires large computational resources.</p>
<div class="addthis_toolbox addthis_default_style " addthis:url='http://learnsoftwareprocesses.com/2008/12/16/types-of-testing/' addthis:title='Types of testing '  ><a class="addthis_button_facebook_like" fb:like:layout="button_count"></a><a class="addthis_button_tweet"></a><a class="addthis_button_google_plusone" g:plusone:size="medium"></a><a class="addthis_counter addthis_pill_style"></a></div>]]></content:encoded>
			<wfw:commentRss>http://learnsoftwareprocesses.com/2008/12/16/types-of-testing/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

