Software Engineering Event Calendar Design

  1. Abstract:

The post presents the UML design and implementation details of the Event Calendar application. The Event calendar application UML modeling and the Design artifacts for the project are included in the report. The report also presents the test driven approach for the development of the Event Calendar.

  1. Documentation:

a. Class Diagram for the project:

b. Use case diagrams

c. Use case document

d. Unit Testing using Visual Basic language.

The testing methods that were used in the development of the project are as follows.


public void m_LocationTest()


      Location target = new Location();

      string expected = “Uk”;

      string actual;

      target.m_Location = expected;

      actual = target.m_Location;

      Assert.AreEqual(expected, actual);

      Assert.Inconclusive(“Verify the correctness of this test method.”);



      public void m_PurposeTest()


      Purpose target = new Purpose();

      string expected = string.Empty;

      string actual;

      target.m_Purpose = expected;

      actual = target.m_Purpose;

      Assert.AreEqual(expected, actual);

      Assert.Inconclusive(“Verify the correctness of this test method.”);



      public void m_StartTest()


      When target = new When(new TimeSpan

      DateTime expected = new DateTime();

      DateTime actual;

      target.m_Start = expected;

      actual = target.m_Start;

      Assert.AreEqual(expected, actual);

      Assert.Inconclusive(“Verify the correctness of this test method.”);


Along these tests methods the results for the tests were successful with the modifications of the code that executes the sequence of steps to add the event and modify the event.

e. Interface using Visual Basic language:

f. Scenario:

1: The project is about the event calendar that stores data for the events and make event lists. The admin creates the event list and the users of the system can see the events in the lists that are created by the admin.

2: The Events in the event list are on some locations which are managed by the admin.

3: All the events should have a purpose that is defined by the purpose and a list of purposes is managed by the admin.

4: All the events have roles defined which define how will perform the role and when this role will be performed.

5: All the roles are done by the people that are previously defined in the system by the admin.

6: The system admin manages People, Roles, Purposes, locations events and event lists.

g. Sequence diagram.

  1. Discussion on implementation of various methods in classes

The operations that we have chosen to implement the event calendar are add event method of the event class, the get location method that gets the location of the event, the get purpose method that gets the purpose of the event as selected by the Admin. The get Role person methods of the Who class that identifies the role or the get when methods that defines the date and time of the event. The methods returns the values to the event class and the event class then makes the addition of the event to the database which in turn returns the Results of the addition to the event controller.

The class Event Calendar that inherits from the list of events, the class event, location, purpose, and who are the main classes used in the application. For the fulfillment of the requirements for the event calendar application.

  1. Description of the working.

On the assumptions based on the analysis of the template code provided I have reverse engineered the code so that the requirements of the event calendar can become clear. The reverse engineer process could have been more effective if the skeleton code was completed with first. The assertions and the testing code are modified many times to get the understanding of the project as desired.

  • Conclusion:

The post is explaining on the test driven development of the event calendar, the calendar application provides the functionality of adding and modifying the events list. The event has a purpose of the event and the location where the event is to be held. The event has a defined date and time when it will happen and the persons that are involved. The calendar application provides the list of event for the user to see. The post about the project presents the artifacts about the project and the explanations of the methods and the attributes used in the application.

  1. Reflections:

The Post has given us insight into the Test driven development and software engineering in general. The application development using the test driven development maintains the standards of coding and enforces the completion of the project that passes all the tests. The testing integrated with the application development gives us the facility to make the applications more comprehensively and without errors.