Wednesday, November 26, 2008

Sample: Initial Project Requirements:

Presented Below is an sample of how the first project requirement looks like when it is being sent to vendor for his feedback. we have consider and FMCG company who manufactures multiple type of product and we are preparing and requirement document for Order Management Process of company.

The company's process of order management works as: Sales man travel from one customer to order in his prescribed area and collects orders only after checking his inventories and if available confirms and order to customer and send the same message across sales dept for necessary steps to be taken furthur... Until now all such correspondences were made through tele call and company has now decide to IT platform into the services and so the project process requirements have been bulletined below for necessary understanding..

The Project flow should ensure and consider the following process in sequence.
  1. Every sales man has and Internet/extra net available Cellphone/PDA though which he should be able to access the Order Management System (OMS) in real time to check for inventory.
  2. Every Customer covered by Sales man should have been registered in database of OMS so that when his id is entered in placed order all relevant details must be available at the same time.
  3. Every sales man should be registered on OMS so that only his code/Id is needed or extracted automatically when an order is being placed and hence all relevant details about him are available at the moment.
  4. Each Product must have all relevant details about it updated in real time in database along with the inventory levels.
  5. If sales man finds sufficient amount of inventory for the requested product then he can confirm the order by enter his code, customer id and order details (amount of different items ordered).
  6. Once an Order has been confirmed the ordered amount should be subtracted from the available stock in inventory.
  7. Sales mangers/Personnel's should be able to see all details pertaining to all orders, also orders should be seen by them based on category as served orders, pending orders, delayed orders, special orders etc.
  8. Sales team/Personnel(Admins) should be able to modify all relevant details pertaining to Customers, Sales man, Orders, Products etc.
Mentioned above are in brief the project requirements for OMS. we would request the analysis of above and suggestions and feedback on the mentioned system along with other details like development time and codt of development and scope of improvements.

Monday, November 17, 2008

Understanding Object Oriented Programming.. for Dummies




My first Visit to My engg college after being passed out from there brought a kind of pleasant surprise to me. while paying an gratitude visit to my Computer Programing Teacher i was asked by him to take the very first session of OOPS (object oriented Programming) for the present Batch. i agreed to his offer..

I rather then stressing to go deep into the OOPS concept, thought of connecting to student by a more realistic way and hence decided to give them an overall view of what OOPS has in store for them... not to keep the interaction monotones i decide for an interactive, questions and answer session way of making them understand. below is provided what came out of that discussion..


Student: What is Object Oriented in Programming?

Me: OOPS make programs more closely model the way people think about and deal with the world. In the older styles of programming, a programmer who is faced with some problem must identify a computing task that needs to be performed in order to solve the problem. Programming then consists of finding a sequence of instructions that will accomplish that task. But in object-oriented programming, instead of tasks we find objects – entities that have behaviors, that hold information, and that can interact with one another. Programming consists of designing a set of objects that model the problem at hand. Software objects in the program can represent real or abstract entities. This is supposed to make the design of the program more natural and hence easier to get right and easier to understand.


Student: what are the building blocks of OOPS?

Me: Not being specific to any language i will tell you few concepts which forms the building block of OOPs and also these concepts have been solely popularised by development of OOPs only.
An object-oriented programming language should provides support for the following object oriented concepts:
Objects and Classes
Inheritance
Polymorphism and Dynamic binding



Student: Can you Explain in general what they really mean starting from Classes?

Me: A class is a blueprint for an object.It defines the thing's characteristics (its attributes,properties) and the thing's behaviors (the things it can do, or methods, operations). Classes provide structure in an object-oriented computer program. A class should typically be recognizable to a non-programmer familiar with the problem domain, meaning that the characteristics of the class should make sense in context.The properties and methods defined by a class are called members.


Student: so if class is the blueprint of the simulation of real world object them what's object then, isn't it the same thing?

ME: I wont say that you are wrong while saying that but at the same time there is a conceptual difference between the two and the difference lies in the fact tat an object "An object is a software bundle of variables and related methods". An object is also known as an
instance. An instance refers to a particular object.
For e.g. Karuna’s bicycle is an instance of a bicycle—It refers to a particular bicycle, where by cycle is an class.....so objects are instances of class so class is single while we can create as many objects of an class as we want. The variables of an object are formally known as
instance variables because they
contain the state for a particular object or instance.


Student: so we can say class is prototype and objects are replicas of it with individual properties. what about other concepts such as inheritance?

Me: yes you are right in case of objects and classes understanding.
coming down to Inheritance..inheritance is just another technical word of what we in general would say "subclasses"..Subclasses are more specialized versions of a class, which inherit attributes and behaviors from their parent classes, and can introduce their own.that means programmer can use the properties of parent class in child class without recoding it here again in subclass....Multiple inheritance is inheritance from more than one ancestor class, neither of these ancestors being an ancestor of the other.


Students: its concepts is pretty much with the same properties as we see generally in real life..so what other concepts are necessary for a beginner to start with...?

Me: that's what the basic concept of OOPs is to simulate real world in software world.. Couple of more concepts needs to be known before we end this briefing, which includes Encapsulation and abstraction..we start with abstraction..
abstraction is also we can say a type of class in which the properties and methods associated with cannot be initiated with an object but this class can be inherited by other classes and initiated to use its methods..the basic logic that goes behind such an logic is that few things in real life are now manipulative by us but whose values are available to us for use..it tries to simulate this feature..


Student: Then what is Encapsulation?

Me: Encapsulation is the bundle of data and methods withing it..in general its and function in which whatever data that is sent to it,it transforms it into a output based on given logic inside it..now again there is nothing to wonder as to why this way..bcoz in real life we have such situation,imagine a tax calculator, everyone needs to calculate tax, that does not mean we will create new rules for everybody, based on amount of earning tax value is calculated though given defined rules..this is what is being simulated here..


Student: Here something regarding Polymorphism is also given..can u enlighten us?

Me: ooh.. thanks for making me remember, how can i forget to explain that... well Polymorphism....Polymorphism allows the programmer to treat derived class members just like their parent class' members. More precisely, Polymorphism in object-oriented programming is the ability of objects belonging to different data types to respond to method calls of methods of the same name, each one according to an appropriate type-specific behavior. One method, or an operator such as +, -, or *, can be abstractly applied in many different situation.

Well that was an abstract of discussion i had with my juniors regarding basic concepts what goes behind an Object Oriented Programming.

Sunday, November 2, 2008

Praxis practice: Interlinking of DB in a blog....

This is an sample of two tables being joined through SQl Query and the result of the query being dynamically and at real time being embeded and displayed on blogs with full public view.....