Welcome to the Class Identifier Tiny Tool!

Created by: Owen Rowader, Chevy Pawlik, Nathan Lipski, Michael Berry


Input your class name:

If you are unsure of a question, mouse over the "�" in the help column for more information
Question: Yes No N/A Help
1.) Is the class name a noun?
Is the name of the class a noun?(Person, Place, Thing).
2.) Will the class have attributes?
Does the class have any attributes? Such as size, width, length, etc.
3.) If yes, will the class have its own unique attributes?
Does those attributes span ONLY to that class?
4.) If the class has its own attributes, will they need to be remembered in order for your software to function?
Will they be stored within the class to be used later by the system? Or does the system not require the information stored by your class?
5.) If the class has its own attributes, does it have operations involving those attributes?
Are there functions within the class that will utilize those attributes?
6.) Are any operations changing the value of the attributes
Do the attributes stored within the class have their values changed by these operations?
7.) If yes, are all the attributes modifiable?
Are the attributes ALL not constant or final values?
8.) Is there more than one attribute within the class?
Does the class contain 2 or more attributes within it?
9.) Could any of the attribute(s) of this class be better represented as of an attribute of another class?
Could an attribute within this class be used better within another class instead of being stored in this one?
10.) If there is more than one attribute, could they ALL be better represented as an attribute of another class?
Could ALL attributes within this class be used better within another class instead? Therefore rendering this class un-needed?
11.) Will each instance of this class have certain attributes shared?
Will instances of this class have the same attributes?
12.) Are there more than one common attributes present?
Do more than one of the attributes span to another instance of the class?
13.) If yes, does it apply to ALL instances of the class?
Every single instance of the class has the same attributes
14.) Will each instance of this class have certain operations shared?
Will another instance of this class utilize the function?
15.) Are there more than one common operation present?
Does more than one operation span to other instances of the classe?
16.) If yes, does it apply to ALL instances of the class?
Every single instance of the class has the operations
17.) Does this class produce information essential to the operation of a solution for the system?
Does the class output information that's absolutely necessary for the system to function?
18.) Does this class consume information essential to the operation of a solution for the system?
Does the class take in information that's absolutely necessary for the system to function?


How does it work? � The Tiny-Tool focuses on the six characteristics for class inclusion highlighted on page 139 of the book: Software Engineering: A Practioner's Approach 9th Edition. These characteristics are:

1: Retained Information (Q2-4)
2: Needed Services (Q5-7)
3: Multiple Attributes (Q8-10)
4: Common Attributes (Q11-13)
5: Common Operations (Q14-16)
6: Essential Requirements (Q17-18)

If your potential class does not satisfy the majority of these requirements, or fails one ESSENTIAL requirement, then the Tiny-Tool will inform you of your class failing and why. Otherwise, the potential class will be identified by the tool as valid.