DELETE FROM table_name // Will not restart from 1 in auto number fields
TRUNCATE TABLE table_name // Will restart from 1 in auto number fields


Selecting Top Records

//Selecting top 2 records among all records

SELECT TOP 2 * FROM PurchaseTable

SELECT TOP 3 * FROM PurchaseTable WHERE Code = ‘XX0001’  ORDER BY PurchaseDate DESC

Selecting Special Characters

//Selecting special characters among all records

SELECT * FROM EBOMMaterialTable WHERE ModelName= N‘150Ω’

SELECT * FROM EBOMMaterialTable WHERE Vendor = N‘你好(你好)’

Restoring Database

  1. Stop SQL Express Service from SQL Server Configuration Manager.
  2. Copy *.MDF & *.LDF file into the C:\Program Files\Microsoft SQL Server\MSSQL10.SQLEXPRESS\MSSQL\DATA.
  3. Right Click to the Database in SQL Management Studio\Attach\Choose *.MDF file

Capability Maturity Model Integration(CMMI Level 5)

Capability Maturity Model Integration

What is CMMI?

CMMI (Capability Maturity Model Integration) is a proven industry framework to improve product quality and development efficiency for both hardware and software ISO/TL9000 is a process compliance standard
CMMI is a process improvement model.

5 Maturity Levels

Level 1[Initial]: Processes are unpredictable, poorly controlled, reactive
Level 2[Managed]: Processes are planned, documented, performed, monitored, and controlled at the project level. Often reactive.
Level 3 [Defined]: Processes are well characterized and understood. Processes, standards, procedures, tools, etc. are defined at the organizational (Organization X ) level. Proactive.
Level 4[Quantitatively Managed]: Processes are controlled using statistical and other quantitative techniques.
Level 5 [Optimizing]: Process performance continually improved through incremental and innovative technological improvements.

CMMI and Business Objectives

Following are obvious objectives of CMMI:
Produce quality products or services: requirements management, quality assurance, verification, and validation are performed.
Create value for the stockholders:CMMI supports quality products, predictable schedules, and effective measurement to support management in making accurate and defensible forecasts. This process maturity can guard against project performance problems that could weaken the value of the organization in the eyes of investors.
Enhance customer satisfaction:planning, monitoring, and measuring, and the improved predictability that comes with more capable processes.
Increase market share:Market share is a result of many factors, including quality products and services, name identification, pricing, and image.
Gain an industry-wide recognition for excellence: consistently perform well on projects, delivering quality products and services within cost and schedule parameters.


– help you to improve your organization’s performance and its ability to meet its business objectives.

Difference between CMM and CMMI:

CMM is a reference model of matured practices in a specified discipline like Systems Engineering CMM, Software CMM, People CMM, Software Acquisition CMM etc. But they were difficult to integrate as and when needed. CMMI is the successor of the CMM and evolved as a more matured set of guidelines and was built combining the best components of individual disciplines of CMM(Software CMM, People CMM etc). It can be applied to product manufacturing, People management, Software development etc. CMM describes about the software engineering alone where as CMM Integrated describes both software and system engineering. CMMI also incorporates the Integrated process and Product Development and the supplier sourcing.

ISO 12207 Standard for Software Development Life Cycle

ISO 12207 Standard

What Is ISO_12207?

ISO 12207 is an ISO standard for software life cycle processes. It aims to be the standard that defines all the tasks required for developing and maintaining software. The ISO 12207 standard establishes a process of life cycle for software, including processes and activities applied during the acquisition and configuration of the services of the system. Each Process has a set of outcomes associated with it.


The standard has the main objective of supplying a common structure so that the buyers, suppliers, developers, maintainers, operators, managers and technicians involved with the software development use a common language. This common language is established in the form of well defined processes. The structure of the standard was intended to be conceived in a flexible, modular way so as to be adaptable to the necessities of whoever uses it.

Basic principles

The standard is based on two basic principles: modularity and responsibility. Modularity means processes with minimum coupling and maximum cohesion. Responsibility means to establish a responsibility for each process, facilitating the application of the standard in projects where many people can be legally involved.

ISO standards for the Software Industry

Agile Model (One of the SDLC Model)

Agile Model
What is Agile Model?

Agile Software Development is a group of software development methodologies based on iterative and incremental development, where requirements and solutions evolve through collaboration between self-organizing, cross-functional teams.


There are many specific agile development methods.
– Most promote development,
– teamwork,
– collaboration, and
– process adaptability throughout the life-cycle of the project.

Benefits of Using Agile Model

The Agile model can deliver a working product faster than conventional linear development model. It is ideally suited for small development teams and projects that are small in scale and handled by expert programmers. Making last minute changes is possible due to the adaptive nature of the whole process. The customer feedback at every stage ensures that the end deliverable satisfies their expectations. Every team member gets to understand the idea behind developing the whole software, rather than looking at a small part of it. Every team member profits from the insights provided by senior members and the seniors profit from the fresh view provided by the juniors. Agile model puts high demands on the development of every programmer as a team player. This creates a more cohesive team unit with time, which is capable of handling projects that vary in scale and which need to be completed in varying time scales.