database

There are 40 entries for the tag database

Design Patterns for Model

What is Model? A model can be considered as a container that facilitates presentation view, behavior and/or persisting data to/from data source (i.e. database etc). Besides the data container elements, a model may or may not contain behavior (i.e. logic), depending on design context of corresponding architecture. While the term “Model” is frequently discussed and used in Model-View-Controller pattern context, it is one of most important consideration in current world of software architecture. Download ...

Employee Info Starter Kit: Project Mission

Employee Info Starter Kit is an open source ASP.NET project template that is intended to address different types of real world challenges faced by web application developers when performing common CRUD operations. Using a single database table ‘Employee’, it illustrates how to utilize Microsoft ASP.NET 4.0, Entity Framework 4.0 and Visual Studio 2010 effectively in that context. Employee Info Starter Kit is highly influenced by the concept ‘Pareto Principle’ or 80-20 rule. where it is targeted to ...

Announcement: Employee Info Starter Kit (v5.0) is Released

Ever wanted to have a simple jQuery menu bound with ASP.NET web site map file? Ever wanted to have cool css design stuffs implemented on your ASP.NET data bound controls? Ever wanted to let Visual Studio generate logical layers for you, which can be easily tested, customized and bound with ASP.NET data controls? If your answers with respect to above questions are ‘yes’, then you will probably happy to try out latest release (v5.0) of Employee Starter Kit, which is intended to address different types ...

Employee Info Starter Kit (v4.0.0) - Visual Studio 2010 and .NET 4.0 Version is Available Now

Employee Info Starter Kit is a ASP.NET based web application, which includes very simple user requirements, where we can create, read, update and delete (crud) the employee info of a company. Based on just a database table, it explores and solves most of the major problems in web development architectural space. This open source starter kit extensively uses major features available in latest Visual Studio, ASP.NET and Sql Server to make robust, scalable, secured and maintainable web applications ...

Aggregator Provider Pattern: An Extension of Provider Pattern

Definition Aggregator Provider Pattern is an extension of Provider Pattern, which enables us to create and utilize multiple instance of the class having the same provider interface. In this pattern, there is an Aggregator class which implements the provider interface and contains a collection of instances of classes having the same provider interface. The underlying caller class of this aggregator is simply unaware of how many provider instances do the caller Provider Aggregator contains, but all ...

5 Reasons to Write Automated Tests for Generated Data Access Layer Code

Software Designers often have to face a common decision factor, that whether they need to design automated test (unit test, integration test etc) infrastructure for data access layer code, specially when the data access layer codes are written using code generator tool. Basically the straight forward answer as ‘Yes’ or ‘No’ in this regard depends of several situations/ factors such the size and budget of the project etc. Here are my 5 top reasons to write automated test (unit test, integration test ...

Measure Your Database Table Schema Synchronization Safety While Using VSTS 2008

Microsoft Visual Studio Team System 2008 provides an excellent data synchronization tool, synchronize data and schema between two database. It saves lots of developer time to sync database objects. Among two possible synchronization techniques, VSTS 2008 uses the unidirectional synchronization technique. In this consideration, as safety measurement will be helpful for developers before start synchronization. The security measurement is considered whether it would create any loss of data or not. Here ...

Understanding Safe Database Synchronization

Data or content synchronization is one of the classic problems in software world. It becomes very trivial point while working on software production, where production data and schema needs to be synchronized with live data and schema. Having some basic conceptual complexity, developers often get afraid to use any automated tool considering the risk factors to lose of data or content. Mostly, in these cases a manual process has to involve making sure a safe content synchronization. However as human ...

Introduction to .NET Application Modeling Language

Introduction nAML (.NET Application Language, pronounced as “namel”) is a visual modeling semantics to model .net applications with wide range of specific details. It contains extremely powerful visual notations and semantics to illustrate complex application components, processes and operations easily. It overcomes the limitation of traditional modeling languages by providing a single space to describe an application system with its structural and behavioral, as well as physical and logical components. ...

nAML: A New Revolutionary Way to Model Your .NET Applications!

Understanding the architecture and code in software application plays as major factors while building good software products. Having an easy to understand visual notation, not only helps architects to model the system efficiently, but also helps developers to quickly implement that, as well as it helps the re-engineering process to easily adopt the architectural model with respect to new requirement. A new visual modeling technique, termed as “nAML” (.NET Application Modeling Language) is being introduced ...

Design Factors 21: Do we use cascading on CRUD operations? If so, is it in DAL or DB layer? Why?

Cascading is a technique that resides between the relations between two database tables. It enables the records of the child tables to be deleted/updates with respect to the corresponding records of the parent table records. Besides the database level, this operation can also be considered in the inter-mediate logical layer. Software designers are required to define the appropriate explanation regarding this consideration. Technorati Tags: architecture,database,.net ...

Design Factors 20: Do we use transaction? If so, is it in DAL or SP layer? Why?

Transaction is a mechanism where a batch of operations can be rolled back for any failure at the mid point of the whole process or can be committed after successful completion of all the operation. Transaction can be used in both database level and/or application level. Technorati Tags: architecture,database ...

Traceability in Layered Architecture: A Roadmap

Traceability in layered architecture lets software architects to define, utilize, reuse and re-engineer existing, current and future application architecture in more structured way. This article provides a roadmap to trace multi-layer architectures easily. Introduction Multi layer architecture is one of the most popular and proven model in the current trend of software development. It lets software designers and developers to easily isolate user interface, business logic and data access logic. In ...

Design Factors 18: Which portion of the db utility classes are vendor specific?

To perform database operations from application, generally DAL uses some db utilities helps to write minimal lines of codes to perform data operations. In the data utility classes, some classes and methods might be specific to vendor (for instance, SQLHelper class will only work to perform operations on MS SQL Server) and some classes and methods might be used regardless of database vendors. These issues, along with the boundaries, should be addressed here. Technorati Tags: architecture,layered ...

Design Factors 16: How the null values are handled?

Null values are one of the basic considerations, without taking care of which may raise lots of confusions and errors while the application is running in the live. Some application architecture supports a model which puts null values to the database while the user is providing empty data from the user interface end. For string/text type data some times are saved as empty string (i.e. string.empty). But it creates confusion where empty string itself considered as a value. Also, besides string/text ...

Design Factors 13: How do we generally handle one to many (database) relationships in logical layers?

One to many relation is one of the most core consideration in relational database design context. However while mapping the database tables to the logical layers, it needs to be defined clearly, how it has been handled. For instance, as design can include a container class that holds parent and child classes as property, or another design can include separate classes for all data entities regardless of parent/child relationship. Technorati Tags: architecture,layered ...

Design Factors 10: What are the mapping criteria for BLL classes and CRUD methods?

BLL classes can be defined with respect to physical or logical business entities, DAL classes, as vice versa. This mapping process can include one to one, one to many or many to many technique. For example, we have two business entities (physical or logical), named “Order Summery” and “Order Items” for an e-commerce application. Having a one-to-many mapping relation with BLL and DAL in class level can contain one separate BLL class, as “OrderBLL”, and two separate two separate DAL classes, as “OrderSummeryDAL” ...

Design Factors 5: Are there any special considerations for “typed” entities?

There are few entities which data are not been changed very frequently, but one or two items are added over few months. For instance, user type, product category, order type, payment mode. For better database operations values of these fields are kept in database and been referred to other entities as foreign keys. But interestingly values of these “Type” entities are used very frequently in coding layer, where developers had to use the hard-coded primary key value or the string value of this type ...

Design Factors 4: How do you map OOP concepts to relational database design?

Let’s consider a simple sample: Contact db table: Contact ID (primary key), Contact Name, Contact Address Employee db table: Employee ID (primary key), Employee Joining Date Customer db table: Customer ID (primary key), Customer Birth Date Now to utilize the object oriented inheritance concept in relational database model, we can create a one to one relation with Contact table with Employee and Customer table, where besides primary key, Employee ID and Customer ID will be used as the foreign key ...

Design Factors 3: Where and how the joined operation (fetched from multiple data tables) is placed in business entities?

When we need to retrieve result sets from multiple database tables via join operation a common practice is to use Generic DataSet to store the result. We can consider Custom Business Entity for the cases where the joining operation can be determined at the software design time, which provides faster execution time than DataSet. Also in some cases joining operation is required to be implemented in application end, rather database end query, especially when multiple entities are required to be combined ...

Design Factors 2: To which context Business Entity classes are mapped?

For simple applications, mapping directly from physical table to logical business entities reduces lots of cost in programming, especially while using code generators. However, no matter in sample or complex applications, besides mapping physical tables, there are few areas which might not be suitable to be mapped directly from databases tables. To map one-to-many relation from database to logical application model, some design creates a base container class for the business entities, which includes ...

Unique Data Columns in SQL Server 2005: A Quick Look

- Primary key -- Only one Identity column -- Can't be null - Identity -- Automatic value -- Only one Identity column -- Can't be null -- Can exist in addition of primary key, GUID-auto columns - Uniqueindentifier -- Can be multiple -- Can be null - Uniqueindentifier - rowguid -- Auto generated -- Only one Identity column -- Can be null -- Can exist in addition of primary key, Identity columns - Unique Key -- Can be null -- Can be multiple Technorati Tags: database,design,software development ...

Normalization Case Study and Theory

Functional Dependencies The value of one attribute in a table is determined entirely by the value of another attribute. For example, the birthday of a Customer can be determined by the primary key of the Customer, in which record the birthday belongs. Here an Customer’s birthday depends on the Customer’s primary key. Customer birthday (depends on) -> Customer ID The notation X -> Y means if and only if each X value is associated with at most one Y value. We can find the birthday of a Customer, ...

Performing Long Running Operation with Asynchronous Page in ASP.NET 2.0

Technorati Tags: asp.net,async,web service,performance,database There are few cases in current web applications, where it involves long running operations. For instance, a system admin uploads 1 gig of data in the system, which will be processed by the system for 30-40 minutes to be splitted and putted properly in the database system, as well as notifying other system user regarding the availability if data. In the traditional approach of web application, the user has to wait for the whole time until ...

Efficient Batch Operation From ASP.NET 2.0 Using SQL Server 2005 XML Data Type

One of the good practice while developing high performance web application is to reduce the database roundtrip as much as possible. In the current trend of web applications, its a very common to enable users to delete multiple items in a list user interface at a time. To perform this type of batch delete operation, one common mistake that happens by beginner developers are to calling the data access method repetitively for each item with in a loop as below: For Each row As GridViewRow In gvEmployees.Rows ...

A Quick View to the Capabilities Which Can Make You a Great Developer

Regarding my previous experience in software development team, as developer and project manager, I’ve found some capabilities that are required to be a good developer to put a valuable effort in the development team. As mainly I have worked with web based database driven applications, these capabilities are closely or loosely relevant to that context. Of course you can consider some other capabilities regarding the software development context in broader sense, but here I consider the very basic ...

Concentration on Smarter Database Documentation

I have been working in SQL Server 2000 for previous several years. Of course it's a nice tool, where I can compile the top level requirements to physical implementation layer in much professional way. Well, as a developer, I have been faced a common problem in multiple projects, where I got confused while seeing the database diagram of an existing system, after a long time while I designed the database. Using database diagram, I can easily see the data fields, analyze the relations etc. But the ...

LINQ – We can use intellisense on queries !!!

As a developer always we want to have the opportunity to write the codes properly, along with programming language specific words and keyword to be highlighted in to different colors. Also VS.NET developers enjoys an IDE features named “Intellisense”, where while wring codes, a list of probable class or object name appears in a list and can be inserted to the code segment, just by selecting the appropriate item from the list. This becomes EXTREMELY useful, when we have to use long class ...

Some Common Issues That Should Be Considered While Creating UML Class Diagrams

Top level view: 1. Definition: Use standard dependency, aggregation, composition, generalization, associations where possible to identify, illustrate data entities and their relationships. 2. Restriction: As this is top level view, we don’t have to consider the primary key, foreign key issues here.3. Functional Requirements: Rather mentioning commonly used functionalities, we will mention specific functional requirements in the “Method” portion of each classes.4. Casing and Naming: ...

Design Consideration for Joined Query while Developing Custom Business Entity

Multi-layer architecture generally involves presentation layer, business logic layer, data access layer etc. which are spitted according to specific responsibility, target as well as boundary. A well designed multi-layered application simplifies the modification, update of code. One primary design consideration while developing software is the “Business Entity” which is the data container and is passed among the layers with data. .NET framework has a rich functional built-in data container, ...

SQL Scripting in SQL Server 2005 Express

When we had worked in SQL Server 2000, including deployment into the remote server, for deployment in testing servers as well as slice the whole database in several parts requires sripts to be generated for both database schema and data. By this time for schema script generation I used “Enterprise Manager” and for generate SQL INSERT script for data I used an third party tool, found in codeproject, which can be found at http://www.codeproject.com/... Beside to populate ...

SQL Express Connection String

To let ASP.NET to search the database location, use the following connection strings in the web.config in specific cases -> in the default data folder connectionString="Data Source=.\SQLExpress;Integrated Security=True;User Instance=True;AttachDBFilen... -> in an absolute path connectionString="Provider=... Source=C:\NewMembershipProv... Security Info=False" ...

Database Simplest Samples – Northwind Employees

Northwind database is such a database which is available in SQL Server 2000 and which data model is well known to most microsoft based developers. So, when testing or modeling new software framework or architecture, specially from data driven perspective, if we conisder Northwind it reduces sample data modeling, data generation etc overhead and also our architecture or product sample can be easily sharable with other developers. As relational database deals with three types of relationships, rather ...

Requirement Analysis Steps while Developing Software

Introduction This article provides a basic outline to discover, document requirement documents for a given software project. Some of the steps can be ignored if the application requirements are pretty simple or small. The Steps Research on Application Requirements This document includes the URL’s that are the web application and similar to the current project, which will be used to elicit the requirements. It also contains the necessary user name and password for the research sites, along with ...

Something about Requirement Engineering

What is Requirement Engineering? The primary issue that is scaled as the success of a software system is that, whether it is capable enough to meet all the requirements of its users, that is the satisfaction level of its users reflects its degree of success. Requirement Engineering includes some processes regarding this fact. A requirement engineering process is a set of structured activities to derive, validate and maintain systems requirements document [1, 2]. As an engineering task generally defined ...

Common UI Practices in ASP.NET Applications

Introduction When we start a new project, there are some common practices that should be followed on the following project. Regarding my development experience on previous 12 ASP.NET projects, I have listed some few practices which can be followed by a developer while developing an ASP.NET application. The Practices Login page: 1. Include cookie based “Remember me” check box. 2. Include a “Forgot password” link, the user can request for password. 3. There will be a test log-in ...

Easy Naming Practices for .NET Coding

Introduction While writing codes for .NET applications, if you and your team members contain some common naming practices, it becomes very useful, especially when you're reading your existing codes and modify your codes in VS.NET IDE. For naming conventions, I went to MSDN site, but got so much links, which made to a bit frustrated to read all the stuffs by spending couple of hours. However I have used my MS Word application and very quickly wrote some naming conventions, which can be read and can ...

Enterprise Application Solution: A Component Based Approach

1. INTRODUCTION The trend of Information Technology has taken a big aspect over the whole world. It has got the trust of various types of users, especially of business organizations by offering the way to optimize the business processes.To achieve high performance with respect to information technology, it’s obvious that a company should contain a well organized computer based information system, containing an application solution that reflects the business strategies, business processes, business ...

Custom Entity – Many 2 Many Table Issue

When we define a custom business entity as an architecture for a given project, one common issue arises that, how we will consider “Many to Many” relationships? As there is only one entity for each database table, “Many to Many” tables might not be a good choice to make a separate table for that, since this is basically a connector entity. Case: Database Simplest Samples – Northwind Employees Entities: Employees, Territories, EmployeeTerritories, RegionOne-to-One: Employees ...

Custom Entity – Data Operation on Multiple Tables

1. In a case, where we are considering m2m, and it’s required to add a new entity record in the m2m table, an obvious case comes, where we create and save the entity first and then we add that entity in the m2m table. For example, when we add a new book to an exiting author’s book list, we first create a “Book” object and save it, and then we add this book to the author book list thru a static method. However, in that case, we might have to consider database server side or ...