Personal income tax computation - A case study
Rather than explaining the advantages of patterns, the following example will help us to see things in action. Computation of annual income tax is a well-known problem domain across the globe. We have chosen an application domain that is well known for focusing on software development issues.
Note
The application should receive inputs regarding the demographic profile (UID, Name, Age, Sex, Location) of a citizen and the income details (Basic, DA, HRA, CESS, Deductions) to compute their tax liability. The system should have discriminants based on the demographic profile, and have a separate logic for senior citizens, juveniles, disabled people, female senior citizens, and others. By discriminant we mean that demographic parameters such as age, sex, and location should determine the category to which a person belongs and therefore apply category-specific computation for that individual. As a first iteration, we will implement logic for the...