Sunteți pe pagina 1din 19

PLANNING, REQUIREMENTS

MODELLING AND ANALYSIS.


DESIGN
Contents

Gant Chart _________________________________________________________________________2

Use Case Model _____________________________________________________________________3

Collaboration and Sequence Diagram __________________________________________________10

Design ___________________________________________________________________________14

Screen Shots ______________________________________________________________________15


1. Produce a Gantt chart indicating how you might schedule the work
of developing the system. Your schedule should clearly be related to
delivering the requirements of “Holloway Rugby” plc and should
reflect RUP/USDP practice.
2. Produce a use case model for the required system – including Use
Case Diagram, and High level Use Case Descriptions for each use case.
For two of the use cases, produce example expanded Use case
descriptions.
Use Case Diagram
High Level Use Case Descriptions
1
Use Case: Perform registration
Actors : Team member, Team organizer
Description: A team member or organizer log in the portal and
fill out the application form for registering
themselves in the Holloway rugby plc. After filling
the registration form user submits it and the
application form is stored in the system that can be
seen by the local center later.

2
Use Case: Pay Subscription
Actors : Team member
Description: A team member log in the system and check out the
status of the registration application submitted. On
approval of application the team member will be
redirected to the payment page where he can pay
the subscription fee for first year. Team member
can add credentials for credit card and pay the
subscription fee. The system will generate the
payment slip and the summary of the registration.
3
Use Case: Manage Membership record
Actors : Secretary
Description: A secretary log into the portal. A secretary can see
the application submitted by the team member for
registration and first year subscription. A secretary
then logs the application into the membership
dashboard and also appends the subscription
against the membership record in membership
dashboard and the system will generate the
membership number. The secretary then send the
membership and subscription details to accounts
department through e-mail.
The secretary can modify the membership details
from the membership dashboard.

4
Use Case: Creates membership card
Actors : Secretary
Description: A secretary log into the portal. A secretary can fetch
the membership record against the membership
number generated. Secretary can generate a
membership card for the team member. A
secretary can print out a card or e-mail a card to
team member.
5
Use Case: Update membership details
Actors : Secretary
Description: On request the secretary can also update the
membership record of a team member. For this,
secretary has to log in the system and fetch the
record of team member using multiple parameters.
The secretary can then update the information of
member and regenerate the membership card.

6
Use Case: Book pitch
Actors : Team organizer(Initiator), receptionist
Description: A user can log into the portal and open a booking
dashboard, from a booking dashboard a user can
see which pitches are available for booking and at
which time those can be booked. The user can also
supply custom parameters e,g. in order to check the
availability of specific pitch at specific time to the
nearest possible place. The user can then apply the
booking. The system in a back ground performs
necessary checks including the checking of the
status of subscriptions of team member and the
membership. If the subscriptions and membership
of team members are up-to date the system will
mark the booking request approved, record the
booking and generate the booking number.
7
Use Case: Check booking status
Actors : Staff officer
Description: Staff officer can log in any time in the system and
see the status of the subscriptions for the team
members. Staff officer has the rights to modify the
subscriptions details. System would send the
notifications and reminders automatically to those
team members whose memberships requires
renewal or to those whose subscriptions are
pending for the new year.

8
Use Case: Center Manager
Actors : Generate Reports
Description: A user can log in to the system any time in order to
generate the reports on current and previous
memberships by the members. The user can supply
multiple parameters in order to see the
memberships in flexible results. The user can also
generate reports on the bookings and print those
out in different formats.
Expanded Use Case Descriptions
1
Use Case: Book pitch
Actors : Team organizer(Initiator), receptionist
Description: A user can log into the portal and open a booking
dashboard, from a booking dashboard a user can
see which pitches are available for booking and at
which time those can be booked. The user can also
supply custom parameters e,g. in order to check the
availability of specific pitch at specific time to the
nearest possible place. The user can then apply the
booking. The system in a back ground performs
necessary checks including the checking of the
status of subscriptions of team member and the
membership. If the subscriptions and membership
of team members are up-to date the system will
mark the booking request approved, record the
booking and generate the booking number.
The receptionist at the center can also book the
pitch. For this a team member should arrive at the
center with their membership cards or they can call
the receptionist in order to book the pitch. The
receptionist checks the membership record of the
team member and ensure that those are up-to date
and register the booking in the system

Typical Course of Events


Team organizer Receptionist

1. A team organizer logs into the 1. Receptionist view the


system membership card of the team
member.
2. Can see the list of available 2. Receptionist ensures that the
pitches. membership and subscription is
3. Apply the booking. up-to date.
3. Sees the list of available pitches
4. Record the booking

2
Use Case: Perform registration
Actors : Team member(Initiator), Receptionist
Description: A team member or organizer log in the portal and
fill out the application form for registering
themselves in the Holloway rugby plc. After filling
the registration form user submits it and the
application form is stored in the system that can be
seen by the local center later.
A team member can also visit the local center in
order to have themselves register. The receptionist
will take the data from the team member to fill out
application form and register them

Typical Course of Events


Team organizer Receptionist

1. A team member log into the 1. Team member visit the local
application. center.
2. Fill out the application form. 2. Receptionist records the data
3. Save the application from them.
3. Receptionist creates the
application.
4. Saves in the system
3. Explain in words how you would go about producing the
Communication diagrams, that is a Collaboration diagram and a
Sequence diagram, from the Use Case model.

The plan for creating a collaboration diagram is as follows: every use case defines
its collaboration and use case diagram. I hope the question is asking about
producing the collaboration and sequence diagram for the whole use case mode.
The plan for collaboration diagram is as follows: flow starts from the initiator of the
use case which is the user. The flow passes over the necessary events that occurs
in the normal user scenario. The collaboration diagram would define the flow of
events and their interconnection with the connected nodes (Stereotypes or
objects) or in our case the actors until the final condition (post condition) is
achieved.
The plan for creating the sequence diagram is as follows: the sequence diagram
would also start from the initiator of the process such as the team organizer
perform registration. Sequence diagram would also represents the occurrence of
events and the interaction between the objects with the temporal behavior
showing the invocation of methods in them.
COLLABORATION DIAGRAM
Chosen Use Case: Book Pitch
SEQUENCE DIAGRAM
4. Explain in words how you would produce the Class Diagram.
Produce an Analysis Class diagram showing the domain classes.
After analyzing the case study thoroughly I did some drafting on paper and taken
out the necessary domain classes and drawn the domain model on a rough paper.
Then I further refined the domain class to remove the non-functional classes and
created analysis class diagram.
ANALYSIS CLASS DIAGRAM
5. Explain how you would move forward from this part of the
development process. What techniques/products might be produced
for the design? Explain briefly the purpose of each. (10 marks)
After inspecting the business requirements and analyzing the case study provided,
drafting the necessary requirements and separating the functional from non-
functional features of the proposed problem domain, the design will follow through
by developing a demonstrating prototype. I followed the RUP (Rational unified
process) to design the product. Presented user case diagram, depiction of user
scenarios using high level use case descriptions and taking out the objects of the
domain and presenting the relationship in them using the class diagram and
dynamic UML models.
Structured design:
This approach will be followed in order to conceptualize the problem domain. In
structured design, problem is divided in chunks and modules so it can be better
understood and solution for each module would be presented.
UI Design representation techniques:
We would be Using different wireframe diagrams, or may be using some dummy
screens developed using any programming language. Mock ups are also another
way of how the future product would look like.
Wireframe diagram: A way of representing UI features of the proposed application
using the windows components in a way that it shows the structure of actual final
product.
Prototype: Any limited behavioral depiction of the proposed application using
some programming language. It shows the initial look of the proposed system that
can simulate a final product.
Mock ups: Representation on papers or cardboards.
6. Provide a visual design of a user interface for realization of a chosen
use case scenario (programmed in Java) Take screen snapshots of the
interface to include in your report.
Appendix
Code
import java.awt.Dimension;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import javax.swing.JButton;

import javax.swing.JFrame;

import javax.swing.JLabel;

import javax.swing.JOptionPane;

import javax.swing.JTextField;

public class MainPanel extends JFrame {

private JLabel lblBookPitch;

private JLabel lblPitchName,lblPitchDescription,lblpitchCenter,lblPitchLength;

private JTextField txtPitchName,txtPitchDescription,txtpitchCenter,txtPitchLength;

private JLabel lblBookingTime, lblTeamOrganizaer;

private JTextField txtBookingTime, txtTeamOrganizaer;

private JButton btnSavePitchInfo;

public MainPanel(){

showUI();

public void showUI(){

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

setSize(new Dimension(400, 300));

setLocationRelativeTo(null);

setTitle("Holloway Rugby Portal");

setLayout(null);

lblBookPitch = new JLabel("Book Pitch");

add(lblBookPitch);
lblBookPitch.setBounds(130, 10, 80, 20);

lblPitchName = new JLabel("Pitch Name");

lblPitchDescription = new JLabel("Pitch Description");

lblpitchCenter = new JLabel("Pitch Center");

lblPitchLength = new JLabel("Pitch Length");

lblBookingTime = new JLabel("Booking time");

lblTeamOrganizaer = new JLabel("Organizer Name");

add(lblPitchName);

add(lblPitchDescription);

add(lblpitchCenter);

add(lblPitchLength);

add(lblBookingTime);

add(lblTeamOrganizaer);

lblPitchName.setBounds(30, 30, 80, 20);

lblPitchDescription.setBounds(30, 60, 120, 20);

lblpitchCenter.setBounds(30, 90, 80, 20);

lblPitchLength.setBounds(30, 120, 80, 20);

lblBookingTime.setBounds(30, 150, 130, 20);

lblTeamOrganizaer.setBounds(30, 180, 130, 20);

txtPitchName = new JTextField( );

txtPitchDescription = new JTextField( );

txtpitchCenter = new JTextField( );

txtPitchLength = new JTextField( );

txtBookingTime = new JTextField( );

txtTeamOrganizaer = new JTextField();

add(txtPitchName);

add(txtPitchDescription);

add(txtpitchCenter);

add(txtPitchLength);

add(txtBookingTime);

add(txtTeamOrganizaer);

txtPitchName.setBounds(180, 30, 130, 20);

txtPitchDescription.setBounds(180, 60, 130, 20);


txtpitchCenter.setBounds(180, 90, 130, 20);

txtPitchLength.setBounds(180, 120, 130, 20);

txtBookingTime.setBounds(180, 150, 130, 20);

txtTeamOrganizaer.setBounds(180, 180, 130, 20);

btnSavePitchInfo = new JButton("Apply booking");

add(btnSavePitchInfo);

btnSavePitchInfo.setBounds(120, 230, 150, 20);

btnSavePitchInfo.addActionListener(new ActionListener() {

@Override

public void actionPerformed(ActionEvent e) {

JOptionPane.showMessageDialog(null, "Booking confirmed!", "Confirmation",1 );

});

setVisible(true);

public static void main(String[] args) {

new MainPanel();

S-ar putea să vă placă și