The Apriori algorithm which is a data mining algorithm is implemented in this project using C#.net. The design comprises of a set of classes organized as sub modules as shown in Figure 9. The input items for the algorithm are represented by the Item class. It contains the attributes for item object which are name and support. The support property holds the occurrence count in transactions for the item. The AprioriAlgo class contains the implementation of the Apriori algorithm. It contains methods for generation of candidate sets, identifying frequent item sets, calculating the support, calculation of confidence and identifying association rules. The SorterFascard class is used to sort the transactional elements in the array whereas the validate class is used while generating strong rules from the minimum confidence value supplied. Dictionary and observable collection classes are used to perform different operations like updating and deleting the intermediate results on the collection of items for generating frequent items. The Result class contains the observable collection of the Apriori algorithm results like frequent item sets and association rules. The project module also contains interface classes like the IAprioriAlgo to hide the implementation details and to enforce interface based decoupling making the components loosely coupled.