ABSTRACTION OF OBJECT ORIENTED CLASS FROM SOFTWARE REQUIREMENTS

This paper abstracts the object-oriented class in the form object structures, object methods and their inter-relationships. This is achieved through the bridging of two different paradigms of procedure-oriented and of data-oriented methods


ISSN: 2320-5407
Int. J. Adv. Res. 5(4), 137-143 138 Faculty teaches in the college assign course through the departments. Each faculty teaches one or more subjects in one or more of the department. Each faculty needs to stay in the quarters provided. A student admitted to a programme, needs to study and appear in five or more courses relevant to a programme Each student needs to stay in hostel provided Each student appears for a internal assessment(IA) test, in each subject and gets marks Each faculty evaluates student in his/her courses taught Each faculty teaches their subjects in a classroom A faculty may teach the allocated subjects in the same/different classroom on each day Based on the functionalities involved in the behavior of the application the entities,attributes, and interrelationships are identified and this forms the data dictionary, which contains entity and attributes and their interrelationships.

Identifications of Synonyms and Homonyms:-
In an organization, there are several users. Each of them has his/her own perspective in coining the entities and attributes. Because of the flexibility in the English language, many meaningful names may be coined for the same attribute/entity. The meaningful names of the same entity form synonymous group (or synonymy) [ 2]. There are many methodologies available in the schema integration literature [4,5,6,7,11]. Each synonymy is given with a generic name. Similarly, the contest specific use of attribute or entity names may result in, the use of same attribute/entity with different meaning in different contest. This situation leads to the existence of homonyms. This situation is to be resolved by assigning different names to each of such homonym word.

Elimination of redundant Attributes:-
Each attribute of each entity is studied in isolation with other attributes of other entities, for their absolute necessity in characterizing the entity. Unnecessary attributes are eliminated. If an attribute/group of attributes is common for two or more entities, this common attributes group is separated to form a link entity [8]. This process implicitly identifies the interrelationships, which has been discussed in one of the following paragraphs.

139
In the above context diagram, the attributes Entrance Exam, Technical Board, University, PLACEMENT are depicted as the actors and TRAIN STUDENT is depicted as the lone process. The data stores, data flows and the sub processes are within this process.
Here, a student is admitted to college when he/she qualifies for the Entrance exam. To get admission to a college for a requisite branch of requisite programme, he/she has to produce his/her name, rank no, branch, programme allocated, to the college. The college management ensures that the admission of the candidate does not overflow the total intake allocated by Technical Board. The University examination activity starts with the candidates' sending of their details like US No., Course Nos., branch, programme& Fees payment. University will conduct examinations and send marks details to the respective US Nos. To seek placement activity, a student has to produce proof of his/her US No., Degree, and Branch and marks card.

Higher Level Data Flow Diagram.
In the higher-level data flow diagram [9] above, the process is decomposed into manageable sub processes along with data flows of the data files used within the system.

Identification of functional and multivalued dependencies:-
These entities are now refined with elimination of redundant attributes and entities. These can serve as first cut object structures. Now the functional dependencies and the multi-valued dependencies that may exist amongst the 140 attributes of each entity are to be identified. The undesirable functional dependencies are to be eliminated using normalization process in sequence from the first normal form to the Boyce-Codd normal form (BCNF). The undesirable multi-valued dependencies are identified through the one-to-many relationships between different attributes of each entity. These are eliminated by decomposing each such entity using fourth normal form and project join normal form (PJNF).

Entrance Exam:-College Name Rank Branch Programme
Since, the primary key of this relation contains single attribute and no-key determine another non-key. The relation is in BCNF. Moreover primary is not a composite key therefore, there is no multi value dependency and relation is already in the project join normal form (PJNF).

College:-College Code College Name Principal Location
Here, the college code and college name are the two candidate keys. We consider college code as primary key. The college name determines the principal. Here a non-key attributes another non-key, and therefore the relation is not in third normal form. Therefore, the relation can be decomposed into two relations as follows:  COLLEG ( College code, College name)  COLLEGE-LOC ( College name, Principal location) These relations are already in PJNF as they comprise single attribute primary keys. Department:-Dept. Name

HOD Building No. Telephone
Since the primary key of this relation contains single attribute and no-key determine another non-key. The relation is in BCNF. Moreover primary is not a composite key and therefore, there is no multi value dependency and relation is already in the project join normal form (PJNF).

Programme:-Prog. Name Prog Co-coordinator No. Of Students Max. Qual. reqd
Since the primary key of this relation contains single attribute and no-key determine another non-key. The relation is in BCNF. Moreover primary is not a composite key and therefore, there is no multi value dependency and relation is already in the project join normal form (PJNF).

Faculty:-Teacher Name Designation Specialization Course Code
Since a teacher can teach more than one subject, the primary key is composite key comprising teacher name, course code. The relation is already in first normal form. This is not a second normal form as teacher name determines. Therefore, the relation is decomposed into two relations as follows: a. Since the primary key of this relation contains single attribute and no-key determine another non-key. The relation is in BCNF. Moreover primary is not a composite key therefore there is no multi value dependency and relation is already in the project join normal form (PJNF). Since the primary key of this relation contains single attribute and no-key determine another non-key. The relation is in BCNF. Moreover primary is not a composite key and therefore, there is no multi value dependency and relation is already in the project join normal form (PJNF).

Class Room:-Room No. Teacher Name Subject Hour Programme
Room No., Teacher Name, Subject together form primary key. Here, Hour determines the Subject. Therefore, the relation is not in BCNF. Therefore relation is decomposed into:  TEACHER_ROOM (Room No, Teacher Name , Subject, Programme) and  STUDENT_HOUR ( Hour, Programme) These decomposed relations are in PJNF.

Hostel:-Hostel Name Warden Total No. Of Rooms
Since the primary key of this relation contains single attribute and no-key determine another non-key. The relation is in BCNF. Moreover primary is not a composite key and therefore, there is no multi value dependency and relation is already in the project join normal form (PJNF). Here the primary key is US No. Since the primary key of this relation contains single attribute and no-key determine another non-key. The relation is in BCNF. Moreover primary is not a composite key therefore there is no multi value dependency and relation is already in the project join normal form (PJNF). Since the primary key of this relation contains single attribute and no-key determine another non-key. The relation is in BCNF. Moreover primary is not a composite key and therefore, there is no multi value dependency and relation is already in the project join normal form (PJNF).

Bridging the gap between two paradigms.
Now, we have identified first cut object structures using good database design principles on one hand. On the other hand, we have identified attributes for each dataflow through the design of higher-level data flow diagram. The object-oriented paradigm is the perfect balance [3] of these two paradigms. Thus, the design of object-oriented specifications need to blend the data oriented (object structures) paradigm with procedure oriented (Attributes group each representing a dataflow) paradigm. There needs to be a one-one and onto correspondences [1,10] between the two sets of structures identified. This also implicitly verifies and validates the selection of object structures. Now, we study the mapping between two groups, one group comprising attributes groups of data flows, each group representing a dataflow and on the other side, the refined object structures. We identify one-one onto correspondences between these two sets of elements. If an object structure contains one or more dataflow groups then, the corresponding functionalities are assigned to the contained object structure as objects methods. This process continues for all the matching object structures. Now, we take the set union of unmatched object structures and study the possible consideration of one-to-one mapping with left out dataflow groups. Each such matching data flow group forms an object structure with its destined process as object method. The left out data flow groups are manually studied for possible participation. Similarly, the left out object structures are studied for possible formation of abstract classes.

Conclusion:-
The Authors have succeeded in making the process semiautomatic, with least human intervention. The intervention is necessitated at critical points where intelligence is necessary. 143