Professional Documents
Culture Documents
2016
Sample Assignment 1
Project Schedule
Requirements
Development Thur. 29/03/01 Thur. 29/03/01 10 9 Casey, Mark
Validation Fri. 30/03/01 Fri. 30/03/01 7.5 7.5 Marshall, Michal, Uday
Correction Fri. 30/03/01 Fri. 30/03/01 8 4 Casey, Mark
Design
Development Mon. 02/04/01 Fri. 06/04/01 13.5 15 Uday, Michal, Marshall
Verification Tue. 03/04/01 Fri. 06/04/01 8 7.5 Casey, Mark
Correction Tue. 03/04/01 Fri. 06/04/01 7.5 5 Uday, Michal, Marshall
Implementation
Development Fri. 06/04/01 Sat. 07/04/01 12.5 13 All
Verification Fri. 06/04/01 Sun. 08/04/01 7.5 6 All
Correction Sat. 07/04/01 Mon. 09/04/01 7.5 3.5 All
Testing
Development Sun. 08/04/01 Mon. 09/04/01 6 8.5 Michal, Marshall
Verification Mon. 09/04/01 Mon. 09/04/01 3 2 Uday, Casey, Mark
Response Tue. 10/04/01 Mon. 09/04/01 4 1.5 Michal, Marshall
Development: All
Verification: All
Correction: All
Errors Found: 0
The system is to be designed so that it uses components that can later be re-used in other projects.
Est. Act. Est. Act. Est. Act. Est. Act. Est. Act. Est. Act. Est. Act.
Planning 1.5 1 1.5 1 1.5 1 1.5 2 1.5 1 7.5 6 225 180
Requirements
Development 5 4 2 5 3 10 9 300 270
Verification 1.5 2.5 1 2.5 1.5 1.5 2.5 2 7.5 7.5 225 225
Correction 4 4 4 8 4 240 120
Design
Development 4.5 4.5 4.5 3 4.5 7.5 13.5 15 405 450
Verification 4 2.5 0.5 4 4 0.5 8 7.5 240 225
Correction 2.5 2 2.5 2 0.5 2.5 0.5 7.5 5 225 150
Implementation
Development 2.5 2.5 2.5 6 2.5 1.5 2.5 1.5 2.5 1.5 12.5 13 375 390
Verification 1.5 1 1.5 1 1.5 1 1.5 1 1.5 2 7.5 6 225 180
Correction 1.5 1.5 3 1.5 1.5 1.5 0.5 7.5 3.5 225 105
Testing
Development 2 3 1.5 0.5 3 4.5 6 8.5 180 255
Verification 1 1 1 0.5 1.5 3 2 90 60
Response 2 2 1.5 4 1.5 120 45
Requirements
Development Thur. 29/03/01 Thur. 29/03/01 10 9 Casey, Mark
Validation Fri. 30/03/01 Fri. 30/03/01 7.5 7.5 Marshall, Michal, Uday
Correction Fri. 30/03/01 Fri. 30/03/01 8 4 Casey, Mark
Design
Development Mon. 02/04/01 Fri. 06/04/01 13.5 15 Uday, Michal, Marshall
Verification Tue. 03/04/01 Fri. 06/04/01 8 7.5 Casey, Mark
Correction Tue. 03/04/01 Fri. 06/04/01 7.5 5 Uday, Michal, Marshall
Implementation
Development Fri. 06/04/01 Sat. 07/04/01 12.5 13 All
Verification Fri. 06/04/01 Sun. 08/04/01 7.5 6 All
Correction Sat. 07/04/01 Mon. 09/04/01 7.5 3.5 All
Testing
Development Sun. 08/04/01 Mon. 09/04/01 6 8.5 Michal, Marshall
Verification Mon. 09/04/01 Mon. 09/04/01 3 2 Uday, Casey, Mark
Response Tue. 10/04/01 Mon. 09/04/01 4 1.5 Michal, Marshall
The table on the following page lists the tasks for each phase, and who was initially responsible.
Throughout the course of the Project, the tasks were assigned different people due to workload or
other commitments.
Errors Found: 19
2.1. Requirement 1
2.1.1.Original Problem Statement (PS1)
A ticket is issued to each car prior to entry. On each ticket is printed the time of entry, and the
ticket number. As soon as the driver takes the ticket the entry gate opens then closes after the
car enters.
2.1.4.Assumptions
A1 The ticket number should be unique for each car in the car-park
A2 The ‘unique ticket number’ includes the date and a number that ranges from 0 to
the number of cars that have entered on a particular day.
A3 The time recorded should be 24-hour time.
A4 The system is notified when a driver is at the entry, before the entry gate.
A5 The system is notified when the driver has passed through the entry or exit gate.
A6 The carpark is open when the user starts the system
A7 ‘prior to entry’ means that the driver is at the ticket dispenser.
A9 The driver is assumed to be in a car.
A12 The capacity means 5 cars.
A13 The gates close after the driver passes through.
A15 Entry is not permitted when the car park is at capacity.
A23 A ticket dispenser issues the tickets.
A24 The physical component which notifies the system of when a car is at the entry
gate is unknown, hence this input to the system has been incorporated into the
driver component.
A25 The physical component which notifies the system of when a car has passed
through the entry gate or exit gate is unknown, hence this input to the system
has been incorporated into the driver component.
Recorder Marshall
Meeting Comments
There was a big discussion about pre-conditions, and how the intergration is going to take place with the current specification
The meeting went pretty well, lots of things were clarified, and the group is starting to see
the big picture.
The above table verifies and justifies that each of Problem Statements are incorporated into one or
more of the Rewritten Requirements and that the Functional Requirements satisfy the original
problem statements using the listed assumptions.
Errors Found: 15
Component
Car Park
Description This component models the car park system and handles the main flow of control
for the program. The user interface components of the car park have been
absorbed into this component and are represented as symbolic constants.
Interface Methods
Method Name Parameters Description
process event The symbolic constants representing events are passed
through this variable.
Recorder Mark
Meeting Comments
Req. & Dev. 'car' is used instead of 'driver' 1WDC Mark 5-Apr
Req./Int. Tree Add 'drivers can exit' and 'drivers can enter' as 2MFN Mark 5-Apr
terminating states
Req./Int. Tree The level of the state changes are not shown ('.') 1MFN Mark 5-Apr
nor are the recursive states ('*')
FR5 & Int. Tree Change Carpark[report requested] to a data out 1WFN Mark 5-Apr
statement.
Int. Tree 4 terminating nodes are not needed 2EFN Mark 6-Apr
Ind. Comp.
Trees Extra nodes not needed 2EFN Michal 6-Apr
Verification: All
Correction: All
Errors Found: 19
Meeting Comments
As it can be seen in the tables below the implementation inspection has been considered
very successful by all individuals that were present. The inspection revealed many defects in
the smaller classes but failed to pick up some of the major errors in the larger classes. These were
found during the first compile. Overall, 19 defects were found some of which would not have
been picked up if the inspection had not taken place. These defects were addressed by the
producers and all have been corrected. I am pleased to comment that all staff involved in the
inspection have once again shown the level of professionalism that you come to expect.
Each class has been implemented to match the design, so that each class contains a method that will
handle the various inputs to that component, and report back (if necessary) the result (such as the
change of state) of processing that input.
The table below traces the implementation of classes back to the Low Level Designs.
Time to Complete:
Meeting Comments
- In total 15 errors were found.
- The Inspection revealed some minor problems with wording of the Test Cases.
- Some comments needed rewording as they were either missing or were incorrect.
- Few of the inputs were incorrect and this was addressed.
- Overall the Inspection went smoothly and with out any major problems.
Inspector’s Report
Note: Only the Valid test cases have been traced back to the functional requirements, since the
functional requirements, are primarily concerned with valid usage of the system.
Functional
Test Case Justification
Requirements
Tests if the Screen is displaying the correct
VTC1 FR2
Amount Owed.
Tests if the Paid Button is actually there and if it
VTC2 FR3
performs its required action(s).
Tests if the Report Button is actually there and if it
VTC3 FR5
performs its required action(s).
6.2.1.Requirements
Defects found in inspection: 19
The efficiency and value of the requirements inspection is apparent. The rate at which defects
were found was high, and there were few issues raised after the inspection.
6.2.2.Design
Defects found in inspection 16
The rate at which errors were found in the design inspection was considerably lower than the
inspections for other phases. This may in part be due to the complexity of design, however there
is opportunity for improvement here.
6.2.3.Implementation
Defects found at inspection: 19
Defects found during compile: 9
Defects found at run-time: 1
65.5% of all code errors were found during the inspection. Several of these were maintainability
issues that would have gone unnoticed without the inspection.
6.2.4.Test Cases
The inspection carried out on the proposed test cases was not considered necessary, however, it
managed to locate some important problems in a relatively small amount of time. The
thoroughness of these test cases was significantly improved by this inspection.
Car Park System 29
Project Analysis
7. Project Analysis
Members Responsible For: -
Development: All
Verification: All
Correction: All
Following, is a report on the analysis of the project, conducted to allow for future improvements to
be implemented. It contains, first, the issues and suggestions raised during the previous project, then
a description of changes made in order to resolve them. Following this is an analysis of this project,
and a comparison of several measurements with the previous one.
7.1.1.Problems Encountered
Confusion with the use of behaviour trees due to different interpretations
Inexperience with, and lack of understanding of software development elements. I.e.
planning, design, implementation, etc.
Lack of standards and templates for documentation and code
Inaccurate recording of time spent on tasks
Inefficient and insufficient meetings. (Time wasting, lateness).
Poor time management. Ie. Not sticking to schedules
The software development process was not well defined
Team members unfamiliar with each other and working as a team
Insufficient planning. The breakdown of tasks and task distribution was not as good
as it could have been
Communication between group members was not always effective
Document preparation took too long and the document control became difficult
Design stage was rushed; more time should have been spent developing alternative
designs and ensuring the chosen design was correct
Feedback on various phases was usually infrequent and of poor quality
7.1.2.Lessons
With the raising of the key problems listed above, it was found that several valuable lessons
could be learnt. These lessons are listed below.
Understand exactly what needs to be done, and how it is done before even beginning
it. Software engineering processes need to be explicitly defined
Teamwork is essential to the success of the project
Certain processes, such as design and requirements specification are vital to
developing quality software
Must allow sufficient time for design phase
All team members need to be knowledgeable on each phase and all aspects of the
project process and also the project overall
Planning and monitoring the project progress are critical in keeping the project on
time.
Re-planning is necessary and planning needs to be broken down into detail.
It is important to have inspections that are formal, and a set of standards (such as
checklists for inspections)
7.1.3.Suggestions
The following suggestions were made as methods of improving the efficiency and productivity
of the team.
7.1.4.Measurements
It was suggested that the following measurements be made in order to track the team’s
improvement.