LOADING...

Unit 19 Object Oriented Programming

Unit 19 Object Oriented Programming

ICON College of Technology and Management

BTEC HND in computing and System Development (CSD)

Unit 19: Object Oriented Programming (L4)

Session: February 2015

Coursework

HND Assignment

Object Oriented Programming

Session: February 2015

Adrian Harcau 

1 Understand the principles of programming

1.1    Discuss the principles, characteristics and features of objected oriented programming.

Unit 19 Object Oriented ProgrammingOOP is a sort of approach in which software engineers characterize programs in modules that is apportioned in memory regions which characterizes information sort and its operations for the entire structure. This structure is along these lines being called as articles which speak to both information and capacities. It permits bringing relationship between one or more objects. It overcomes disadvantages of procedural systems and gives favourable position that permits developers to make program in modules and includes new question with no changes in the current module (Chu, 2014). Along these lines, that new protest can get highlight of existing ones. OOP gives components, for example, Importance is on information as opposed to activities, Program is isolated into parts and every module is called as items, it takes after a methodology of base up, Data and capacities are joined in such a route, to the point that outcomes in an information structure, Characterization between articles is simple, It permits concealing information and thus it can’t be gotten to by outer unapproved capacities, Easy correspondence between articles through capacities, Flexible insertion consequently permits simple expansion of information and capacities in project, Maintains consistency in programming advancement, Improved idea of C programming Language, Provides an approach to make program with both methods i.e. procedural and article situated also, Mostly favoured in extensive undertakings, In-fabricated memory administration highlight performs great memory association.

1.1.1 You must explain the meanings of Classes and Objects and give an example of any class and an object. List at least 5 properties and 5 methods for your example.

Unit 19 Object Oriented Programming

When many objects are gathered together, it is described as class that shows relationship between one another and in this way shares basic capacities. It depicts item and these points of interest can be called as arrangement or format of an article. It is characterized utilizing a pivotal word called class. An item is a particular substance that keeps information stockpiling which then sends and acknowledges messages. Consequently, performs interrelated activities. An occurrence of a class is spoken to by an article. Beneath makes an object of class Record object Record.

The class contains information and capacities or properties and systems. Properties shows information of an article or its trademark though strategies speaks to the activities performs on these information by an item (Moto-Oka, 2012).

 

Student
StudentID: int

FirstName: string

LastName: string

DOB:DateTime

Nationality: string

Attendance()

Enrol()

Exam()

Register()

Below shows how these is represented in a class,

public class Record {

publicint id, sal; // Properties in a class

public String name, designation , city; //Properties in a class

public void initialize(int id, intsal, String name, String designation, String city){

this.id=id;

this.sal=sal;

this.name=name;

this.designation=designation;

this.city=city;

}

//Methods in a class

public void display() {

Console.WriteLine(“Student id=”+id);

Console.WriteLine(“Student name=”+name);

Console.WriteLine(“Student designation=”+designation);

Console.WriteLine(“Student city=”+city);

Console.WriteLine(“Student salary=”+sal);

}

}

public class RecordMain(){

public static void Main (string args[]){

Record objectRecord = new Record();

objectRecord.initialize(101,‘Harshita‘, ‘software developer‘,‘Jaipur‘,50000);

objectRecord.display();

}

}

 

Class Name
                       Attributes
                      Operations()

 

Below shows UML notation for above example,

Record
Id : int

Sal : int

Name : String

Designation : String

City : String

void initialize(int id, intsal, String name, String designation, String city)

void display()

 1.1.2 Explain the concepts of abstraction, inheritance, encapsulation and polymorphism in OOP design.

All together for a coding dialect to be question situated, it needs to allow functioning with classes and objects and also the execution and use of the key article arranged standards, that is, reflection, legacy, epitome and polymorphism.

Abstraction To decrease complexities and increment in effectiveness, it permits a developer to shroud all the imperative information around an item. It gives an approach to effortlessly keep up and comprehend questions by decoupling it and its application. In the event that there is any need to change in the operation we simply require to alter in the internal points of interest. Case in point, we have a system to compute student percent in understudy class which has student id as its parameter and results understudy percent in number. This capacity can be reusable for all the understudies

Inheritance – It is the office of another class to be framed through the expansion of a present existing class. The youngster class can get to all the properties of guardian class and this can be limited through access specifies on it.

Encapsulation – It is the walled in area in a project object of the considerable number of properties to the code that alters it. It permits changing inward operation with no impact on the general working of the framework. It keeps project highlights safe from outside obstruction. In what way and wherever the data is put away is avoided the client (Organick, 2014).

Polymorphism – It is a general term that implies numerous structures. It gives a capacity to perform that the same operations by a shifted arrangement of disparate sorts of things. A portion of the polymorphism samples are strategy over-burdening, administrator over-burdening, and system overriding. Subsequently, it can be either static which is Overloading or dynamic, which is overriding (Baecker, 2014).

1.1.3 Finally explain the advantages of OOP principles in the design of software solution to a problem such as described in the above scenario. Here you may refer to software reuse, modularity and extensibility.

Abstraction helps to perceive and resolve challenges and join their clarifications with the processor in some particular coding languages. It also enables the reduction in complex arrangements without altering in the fundamental case. Inheritance allows child classes to get the components of existing guardian class. This easily includes new properties and techniques with existing are refinements (Åström & Wittenmark, 2013). Also improves extensibility, reusability and evacuates redundant code. Encapsulation enables the progressions effortlessly without influencing rest application code. It also reduces multifaceted nature through concealing data. Moreover, its maintenance is easier. Polymorphism enables code reusability and with no stress on the instances of classes’ it can be reused effortlessly even after testing and its implementation

2 Be able to design object oriented programming solutions

2.1 Identify the objects, data and file structures required to implement your proposed design

The given issue Student Information Management System states to outline a framework which stays informed concerning understudy, mentor and administrator subtle elements in the school more than a network. It has the capacity store accessible courses data. This framework deals with understudy’s enlistment and their expense details. After the understudy’s enrolment, for every class in enrolment, the overseer produces classes in this framework and dole out date, time and mentor.

At this class mentors have the capacity to transfer their working criteria’s, lesson materials and lesson plans. They can likewise transfer information sheets for the understudy’s homework. Understudies can download these materials or can read on the web. This framework additionally deals with understudy’s participation and their advancement reports in a specific course. It additionally gives capacity for recorded folks to login and checks their understudy’s finished report for scholastic and participation also. After the enrolment of an understudy he or she gets an email and their guardians to alarm them about their classes’ timetable, if there is an effective enrolment of the understudy with all the requirements.

The framework must execute a protected log-in framework with the accompanying sorts of client access level. Admin is responsible for all the UI administration in the framework. Data Entry enters data in the database. View makes Parents and Tutors can see the student reports and understudy can see their course plan.

In the file structure, for the client interface business rationale, the two documents that are: Executable client interface and dynamic X .dll. The Access database exists on the server by method for a dynamic X .dlland which the customer side .dllaccess the database.

2.2 Design an object oriented programming solution to a given problem

UML class chart portrays sorts of items utilized as a part of a framework, its properties and their relationship. It gives complete overview to a specific idea. Every one of its outlines frame a framework’s model. In the event that the reflection is not reliable in the graph then it can bring about perplexity to the intended interest group. The UML class chart box is partitioned into segments specifically name, qualities or properties and strategies or operations.

Unit 19 Object Oriented Programming

Figure: Class Diagram

3 Be able to implement object oriented programming solutions

3.1 Implement an objected oriented solution based on a prepared design

The designing period of the framework obliges the front-end instruments and back-end apparatuses with some equipment and programming necessities. Each of them contains some or other indicated parts. This is done utilizing the C# dialect which is in charge of the coding part. The IDE that is utilized to run the applications is Visual Studio which helps in producing restricted time to code some module (Chen, F., Kusaka, H., Bornstein, R., Ching, J., Grimmond, C. S. B., Grossman‐Clarke, S., … & Zhang, C, 2011). It brings the adaptability onto the site pages that keeps running on the server. Furthermore gives capable instruments.

We implement our Student Information Management System (SIMS) item situated solution centred on the accompanying key units which are Administration Module, Registration Module and Reports Module Each of these is partitioned on the premise of their errand execution. The undertaking connotes what the segment does with respect to the code. Managerial module deals with all data based operations addition, redesign, uproot and view and site page operations for admin profiles. The Registration Module is in charge of all data arranged operations supplement, upgrade, uproot and view and website page operations for understudy singular information and course enlistment. Though the Reports Module is in charge of all report era capacities and page functionalities. To accomplish these obligations, the key menu choices are determined and the approved clients give access to the framework based on their rights and obligations.

3.2 Define relationships between objects to implement design requirements

Unit 19 Object Oriented Programming

Figure: type of relations in class-diagrams

At the point when two classes demonstrates an association between one another in any capacity. It is spoken to an affiliation. It can be coordinated or undirected. For instance as seen in the below diagram:

Unit 19 Object Oriented Programming

At the point when a class is made as a gathering of different classes, it is termed a collection relationship between them.

3.3 Implement object behaviours using control structures to meet the design algorithms

Administrator is subject for taking care of understudy subtle elements.

I.

  • Use-case: Logs into site with confirmation.
  • Aim in setting: To get to and keeps up site effortlessly.
  • Brief Explanation: This is utilized when the manager needs to get to the site to perform changes in the individual points of interest of the student.
  • Prerequisites: He/she must be signed in the site to begin.
  • Basic Flow: The Website approaches the chairman for the client name and secret key. The Then enters the client name and password and checks the secret word and sets the client’s regard. The Administrator is concurred access to the Website to do his undertakings.
  • Other Flow: The manager enters inadmissible username and secret key then he won’t be allowable to enter the site.
  • Use Case: Show understudy data
  • Aim in connection: View the information of a student
  • Brief Explanation: This is utilized when the manager needs to comprehend the private points of interest of the understudies exists in the database.
  • Prerequisites: The Administrator must be enrolled into the framework popular for the utilization case to start. The particulars of the student must exist in the database. The understudy id must be come improperly.
  • Basic Flow: He or she sign on the System. He then examine the understudy from taking after means i.e. understudy id, name, enlistment date, status. The System empowers for the understudy point of interest from one of the above means. This subtle element is then shown on the screen.
  • Other Flow: If understudy not found, the framework appears a lapse message.

III.

  • Use Case: Update understudy data
  • Aim in setting: Update the data of a student
  • Brief Explanation: When the overseer needs to redesign the private information of him/her effectively existing in the database.
  • Prerequisites: The Administrator must be enrolled into the framework popular for the utilization case to start. Understudy points of interest must be enlisted in the database.
  • Basic Flow: Admin sign in the System. The Admin can redesign taking after means: – name, gender, DOB, contact no, capability, city, email, address, depiction. The Website alters the database as per redesigned data. The understudy information is updated in the database (Encarnacao, J. L., Lindner, R., & Schlechtendahl, E. G, 2012).

Student

  • Use Case: understudy enrolment
  • Aim in connection: enrolment of a student
  • Brief Explanation: This is utilized when the understudy enlist himself/herself in the database on the web.
  • Prerequisites: The client id must be particular and wrote appropriately.
  • Basic Flow: He or she enters in the site. The understudy enters his/her data from the accompanying means:- understudy id, secret word, name ,status ,sex, DOB ,contact no, capability ,city ,email1,address , depiction , resume , picture . The System data is added to the database (Carroll, 2013).
  • Other Flow: If the client id wrote is not particular then it will show a slip message.
  • Use case: Logs into the site
  • Aim in setting: To get to and keeps up site effortlessly.
  • Brief Explanation: This is utilized when the understudy needs to get to the site
  • Prerequisites: The Administrator must permit the particular understudy onto the site keeping in mind the end goal to begin.
  • Basic Flow: The site pops the understudy for the client name and watchword. The Student sorts the client name and secret key. The site approves the watchword and gatherings the client’s approval. The Student is determined access to the site to do his errands
  • Other Flow: The Student embeds wrong username

3.4 Make effective use of an Integrated Development Environment (IDE), including code and screen templates

Below shows the screenshots of implemented object-oriented solution:

 

Login Page

Unit 19 Object Oriented Programming

Records in MS Access database

Unit 19 Object Oriented Programming

4.1 Critically review and test an object orientated programming solution

Expected test outcomes are typically specified in necessity detail record that must act subsequent to testing the usefulness of an item arranged arrangement. Real test outcome is the thing that we get from running the genuine test

4.2 Analyse actual test results against expected results to identify discrepancies

 

                     Expected Results                         Actual Results
Administrator can view and update the information of any students                              Yes
Students can view their information                              Yes
Students can update their information No
Administrator can logs into the system                              Yes
Tutor schedules their lesson on system                              Yes
Admin can update student details to the database                               Yes
Admin searches for a particular student                               Yes
Admin can access all the student information                               Yes
Student can upload his/her image                                No
Email is sent to parent and student after enrolment                               Yes

 

4.3 Evaluate independent feedback on a developed object oriented programme solution and make recommendations for improvements

Student Information Management System can be enhanced to incorporate some additional component, for example, understudy participation administration, their bent administration of understudies in light of their act assessment can be included. Associated class usefulness can be included. Usefulness of discussion and messages can be included. Online exam highlight can be included. Online resume constructor highlight can likewise be included

4.4 Create onscreen help to assist the users of computer program

The application contains login page when we run application. We have a drop down rundown containing login administrator, login guide, login understudy and login parents. First we pick administrator for admin dashboard and compose a secret key and username “administrator” (Chen, F., Kusaka, H., Bornstein, R., Ching, J., Grimmond, C. S. B., Grossman‐Clarke, S., … & Zhang, C, 2011). Admin dashboard demonstrates five catches that is administrate by administrator. Student enrol structure spare the data about the select student. Tutor enroll structure spare the data about the enlist guide. In Tutor structure administrator spare the classes of guide. Administrator deals with the time table for students. Admin deals with the understudy participation. For coach login pick the guide sort and compose username and watchword “administrator” then login and demonstrates the “Mentor blueprint for understudies” for understudies upload. For understudy login pick the understudy sort and compose username and secret word “administrator” then login and demonstrates the “understudy dashboard”. On understudy dashboard pick “understudy decision” for the particular class, coach, date and time for the understudies. On student dashboard pick “understudy timetable” for the understudies. On student dashboard pick “study material” that is given by guide to understudies. For folks login pick the folks sort and compose username and watchword “administrator” then login .and after that demonstrates the “understudy participation structure” for folks

4.5 Create documentation for the support and maintenance of a computer program.

This record aims in powering the current physical framework. It can be watched and oversaw remotely. It diminishes the labour required. It gives careful data. Unequalled together gathered information can be kept and can be gotten to at any period. The data which is kept in the store framework helps in taking brilliant results by the administration. So it is well to have anobject arranged Student Information Management framework. This must be upgraded and oversaw time to time in setting to equipment and programming (Freiberger, 2014).

Conclusion

The above report outlined that is Student Information Management System which protects all the capacities that are specified at the starting task determination stage. However, we can upgrade its elements to increment in the look and feel in order to look for the client’s consideration, for example, intuitive catches. Additionally, it can be incorporated for more usefulness, for example, understudy can transfer his or her picture and office where understudy can upgrade their essential profile points of interest. Likewise this arrangement can be upgraded by including components, for example, joined class usefulness, discussion and messages functionality online exam highlight etc. It diminishes the labour required. It gives precise data. Record-breaking together gathered information can be kept and can be gotten to at any period (Encarnacao, J. L., Lindner, R., & Schlechtendahl, E. G, 2012). So it is well to have an item situated Student Information Management framework and must be redesigned and oversaw time to time in setting to equipment and programming.

Connect with us