1. A method for providing software applications through a computer network based on user demands, the method comprising: accepting, through a web store, a subscription of one or more software application packages from a user; sending, to the user, a user identification module configured to control access of said one or more software application packages, and coupling the user identification module to a client terminal device of the user; a server device authenticating the user by requesting subscription information of the user from the user identification module through the computer network; upon authentication of the user, the server device providing, to the client terminal device of the user, a listing of one or more software application packages subscribed through the web store in accordance with the subscription information; the server device receiving, from the client terminal device and through the computer network, a selection of a first software application package from said listing of one or more software application packages; the server device transmitting the first software application package to the client terminal device through the computer network; and executing the first software application package by a processor of the client terminal device using resources of an operating system resident in a memory of the client terminal device.