Project Final Report v 1.54
Project Final Report v 1.54
Submitted By:
Student Name 1 FA24-BCS-xxx
Student Name 2 FA24-BCS-xxx
Supervisor
<Supervisor Name>
i
September 23, 2024
[Project Name] [Document Name] [Version]
Project Name
A project presented to
GIFT University, Gujranwala
In partial fulfillment
of the requirement for the degree of
By
ii
September 23, 2024
[Project Name] [Document Name] [Version]
DECLARATION
We hereby declare that this software, neither in whole nor as a part has been copied from any source.
It is further declared that we have developed this software and accompanied report entirely on the
basis of our personal efforts. If any part of this project is proved to be copied from any source or
found to be reproduction of someone else's work, we will stand by the consequences. No portion of
the work presented has been submitted of any application for any other degree or qualification at this
or any other university or institute of learning.
--------------------------- ---------------------------
iii
September 23, 2024
[Project Name] [Document Name] [Version]
Executive Summary
In public places, there is often need for monitoring people and different activities going on, which
can be referred to many reasons later, including security. Appointing humans for this task involves
many problems, such as increased employee hiring, accuracy issues, trust concerns, no proof for later
use, and also the fact that a human can remember things till a certain time limit. Talking about the
current security system, they use dumb still cameras with a continuous recording facility irrespective
of whether any event may happen or not. Moreover, they are usually pointing at specific user-defined
locations, so more than one camera is required to cover the entire region.
To prevent all these problems from prevailing, the CSCS was developed. It is a surveillance system
that provides solutions to many of these problems. It is a standalone application that doesn’t require
any computer to operate. It monitors different situations using a camera that is able to rotate
intelligently based on sensor messages and captures the scene in the form of video or photos for later
reference as well.
The Customizable Surveillance Control System (CSCS) is a surveillance system that can be assigned
a sensor type; in our case, a heat sensor is used. It works accordingly, rotates the camera upon event
detection, and performs user-defined actions like capturing videos and storing them for future use.
It is an embedded system consisting of a Linux Fox kit with an embedded running server application.
Also, a camera, USB storage device, and a sensor node base station are attached to the Fox kit. LAN
communication is used by the user to download the videos and operate the system manually.
iv
September 23, 2024
[Project Name] [Document Name] [Version]
Acknowledgement
All praise is to Almighty Allah who bestowed upon us a minute portion of His boundless knowledge
by virtue of which we were able to accomplish this challenging task.
We are greatly indebted to our project supervisor “Supervisor’s Name”. Without his personal
supervision, advice and valuable guidance, completion of this project would have been doubtful. We
are deeply indebted to them for their encouragement and continual help during this work.
We are also thankful to our parents and family who have been a constant source of encouragement
for us and brought us the values of honesty & hard work.
--------------------------- ---------------------------
v
September 23, 2024
[Project Name] [Document Name] [Version]
Abbreviations
SRS Software Require Specification
PC Personal Computer
vi
September 23, 2024
[Project Name] [Document Name] [Version]
Table of Contents
1 Introduction ............................................................................................................................. 1
vii
September 23, 2024
[Project Name] [Document Name] [Version]
13 Appendix A ........................................................................................................................... 34
viii
September 23, 2024
[Project Name] [Document Name] [Version]
14 Appendix B ........................................................................................................................... 40
ix
September 23, 2024
[Project Name] [Document Name] [Version]
List of Figures
Figure 1: Context Diagram of the System ............................................................................................ 3
Figure 2: WBS with Gantt Chart .......................................................................................................... 7
Figure 3: Current System ..................................................................................................................... 9
Figure 4: Use Case Diagram .............................................................................................................. 11
Figure 5: Selecting the Heading 1 style from the Word style menu .................................................. 75
Figure 6: The report style toolbar provides easy access to the approved styles. ................................ 75
Figure 7: Page settings defined for this document ............................................................................. 76
x
September 23, 2024
[Project Name] [Document Name] [Version]
List of Tables
Table 1: Related System Analysis ........................................................................................................ 2
Table 2: Tools and Technologies ......................................................................................................... 4
Table 3: Team Member Work Division ............................................................................................... 5
Table 4: WBS for software development project ................................................................................. 6
Table 5: List of modules in current system .......................................................................................... 9
Table 6: Show the detail use case template and example .................................................................. 11
Table 7: Description of FR-1 ............................................................................................................. 13
Table 8: Details of APIs used in the project ....................................................................................... 21
Table 9: Test Case Template (Module) .............................................................................................. 24
Table 10: Test Case Template (Unit 1) .............................................................................................. 25
Table 11: Test Case Template (Unit 2) .............................................................................................. 25
Table 12: Test Case Template (Functional) ....................................................................................... 26
Table 13: Test Case Template (Integration) ....................................................................................... 26
Table 14: Automated Testing ............................................................................................................. 27
Table 15: Lesson Learnt for the course project .................................................................................. 30
Table 16: Work Break down of individual Student for each milestone ............................................. 30
Table 17: Reviewer Comments .......................................................................................................... 31
xi
September 23, 2024
[Project Name] [Document Name] [Version]
1 Introduction
This chapter provides the overview of the project. The first paragraph of every chapter should provide the
chapter summary.
Rational: Provide the reason why you are creating the proposed software/project. [1 sentence]
Existing system: Discuss the current state of the world. [2 sentences]
Targeted challenges: Problems/opportunities the proposed project is going to resolve. [2 sentences]
Grey area: Identify the gap that will be addressed by the proposed project. [1 sentence]
Objectives: Discuss the goals that the proposed project is going to achieve. [3 sentences]
Significance of this project: Discuss the key benefits of the proposed project in terms of product. [1
sentence]
This section discusses about the existing/similar systems related to the proposed project. At least three
existing systems should be discussed. However, there might be only one or no existing system. In this
situation the related system should be discussed accordingly. Briefly explain the analysis of the related
system, which help to explicitly specify the contribution of the proposed project. You may use a single
paragraph to explain a similar (related) single system/application. However, the explanation for a
similar single system/application should not be more than 5 sentences. Note that the Research-based
projects may provide literature review instead of related system analysis. You must cite the Tables/
Figures as presented in this document. For example, Table 1 presents the related system with the
targeted project solution. This section describes current trends/ research/ products etc. related to your
project.
1
September 23, 2024
[Project Name] [Document Name] [Version]
Context diagram is widely used to define and clarify the boundaries of the software system. Therefore,
presenting a context diagram can help model the scope of the targeted project. Figure 1 depicts the
context diagram of a cafeteria ordering system.
2
September 23, 2024
[Project Name] [Document Name] [Version]
1.5 Modules
Write down the modules of the targeted project. Do not forget to mention special/new features.
Briefly explain the identified module using 6 to 8 sentences.
Note that for a group of 4 student’s project, usually 6-8 Modules are expected. Similarly, 9-11
modules are expected for a 5 student’s project.
Explanation of a Module: Module is a section of a program that performs a task. Programs consist of
modules, each of which contains one or more routines. The term routine is synonymous
with procedure, function, and subroutine.
Example:
Enterprise resource planning (ERP) software - is comprised of several large modules (for example,
finance, supply chain and payroll, etc.), which may be implemented with little or no customization.
Briefly explain each of the modules of the targeted project with respect to major functionality in a
user context.
3
September 23, 2024
[Project Name] [Document Name] [Version]
LI-1: Some food items that are available from the cafeteria will not be suitable for delivery, so the
delivery menus available to Persons of the COS must be a subset of the full cafeteria menus.
LI-2: The COS shall be used only for the cafeteria at the Process Impact campus in Clackamas,
Oregon.
4
September 23, 2024
[Project Name] [Document Name] [Version]
5
September 23, 2024
[Project Name] [Document Name] [Version]
Rita; William;
1 Analysis Mon 6/10/24 Thu 6/20/24 9d Tyler; Wenger; 88
Steve
Requirement 100
2 Mon 6/10/24 Thu 6/13/24 4d Rita; William
Meetings
Communication 2 Rita; William; 96
3 with Fri 6/14/24 Mon 6/17/24 2d Tyler; Wenger;
Stakeholders Steve
Document 3 100
4 Tue 6/18/24 Wed 6/19/24 2d William
Current System
Analysis 4 0
5 Thu 6/20/24 Thu 6/20/24 1d
Finished
Develop System 11 41
13 Tue 7/23/24 Wed 8/7/24 12 d Tyler; Wenger
Module
Integrate System 13 0
14 Thu 8/8/24 Fri 8/16/24 7d Tyler
Module
Perform Initial 14 0
15 Mon 8/19/24 Wed 8/21/24 3d Wenger
Testing
Development 14 0
16 Thu 8/22/24 Thu 8/22/24 1d
Finished
Perform System 16 63
18 Fri 8/23/24 Tue 9/3/24 8d Vicky
Testing
Document Issues 18 0
19 Wed 9/4/24 Fri 9/6/24 6d Mike
Found
Correct Issues 18 0
20 Wed 9/4/24 Wed 9/11/24 3d Mike
Found
21 Testing Finished Thu 9/12/24 Thu 9/12/24 1d 20 0
On-Site 21 0
23 Fri 9/13/24 Fri 9/13/24 1d Tyler
Installation
6
September 23, 2024
[Project Name] [Document Name] [Version]
7
September 23, 2024
[Project Name] [Document Name] [Version]
2 Problem Definition
This chapter discusses the specific problem to be solved and should also elaborate on the expected
outcome.
It is suggested to check it online that how to write a quality problem statement. At the same time,
students may consult the previous FYP final reports to refine their problem statement.
Example:
Employees at the company Process Impact presently spend an average of 65 minutes per day going to the
cafeteria to select, purchase, and eat lunch. About 20 minutes of this time is spent walking to and from the
cafeteria, selecting their meals, and paying by cash or credit card. When employees go out for lunch, they
spend an average of 90 minutes off-site. Some employees phone the cafeteria in advance to order a meal to be
ready for them to pick up. Employees don‘t always pet the selections they want because the cafeteria runs out
of certain items. The cafeteria wastes a significant quantity of food that is not purchased and must be thrown
away. These same issues apply to breakfast and supper, although far fewer employees use the cafeteria for
those meals than for lunch.
Briefly explain how your proposed system solves the problems as mentioned in the Problem
Statement. Maybe, the proposed system provides a more cost-effective solution than the existing
systems. Therefore, it is required to explicitly mention the logic of the proposed system, which
provides additional benefits in contrast to the existing systems. The problem solution can be usually
described in 14-16 sentences.
Example:
8
September 23, 2024
[Project Name] [Document Name] [Version]
Many employees have requested a system that would permit a cafeteria user to order meals (defined as a set
of one or more food items selected from the cafeteria menu) online, to be picked up at the cafeteria or delivered
to a company location at a specified time and date. Such a system would save employees time, and it would
increase their chance of getting the items they prefer. Knowing what food items customers want in advance
would reduce waste in the cafeteria and would improve the efficiency of cafeteria staff. The future ability for
employees to order meals for delivery from local restaurants would make a wide range of choices available to
employees and provide the possibility of cost savings through volume discount agreements with the
restaurants.
Objectives
Example:
BO-1: Reduce the cost of cafeteria food wastage by 40%.
BO-2: Reduce cafeteria operating costs by 15%.
BO-3: Increase average effective work time by 15 minutes per cafeteria-using employee per day.
9
September 23, 2024
[Project Name] [Document Name] [Version]
3 Requirement Analysis
The following parts of Software Requirements Specification (SRS) report should be included in this
chapter.
A use case describes a sequence of actions a system performs that yields an observable result of
value to an actor.
Major elements of the UML use case diagram are shown on the picture below.
10
September 23, 2024
[Project Name] [Document Name] [Version]
Use Case ID: Enter a unique numeric identifier for the Use Case. e.g. UC-1
Use Case Name: Enter a short name for the Use Case using an active verb phrase. e.g.
Order a Meal
Actors: [An actor is a person or other entity external to the software system being specified
who interacts with the system and performs use cases to accomplish tasks.] e.g.
Primary Actor: Person Secondary Actors: Cafeteria Inventory System
Description: [Provide a brief description of the reason for and outcome of this use case.] e.g.
A Person accesses the Cafeteria Ordering System from either the corporate intranet
or external Internet, views the menu for a specific date, selects food items, and
places an order for a meal to be picked up in the cafeteria or delivered to a specified
location within a specified 15-minute time window.
Trigger: [Identify the event that initiates the use case.]e.g.
A person indicates that he wants to order a meal.
11
September 23, 2024
[Project Name] [Document Name] [Version]
Preconditions: [List any activities that must take place, or any conditions that must be true before
the use case can be started.
PRE-1. Person is logged into COS.
PRE-2. Person is registered for meal payments by payroll deduction.
Post conditions: [Describe the state of the system at the conclusion of the use case execution.
POST-1. Meal order is stored in COS with a status of “Accepted.”
POST-2. Inventory of available food items is updated to reflect items in this order.
POST-3. Remaining delivery capacity for the requested time window is updated.
Normal Flow: [Provide a detailed description of the user actions and system responses that will
take place during execution of the use case under normal, expected conditions.
1.0 Order a Single Meal
1. Person asks to view menu for a specific date. (refer 1.0. E1, 1.0.E2)
2. COS displays menu of available food items and the daily special.
3. Person selects one or more food items from menu. (refer 1.1)
4. Person indicates that meal order is complete. (refer 1.2)
5. COS displays ordered menu items, individual prices, and total price, including
taxes and delivery charge.
6. Person either confirms meal order (continue normal flow) or requests to modify
meal order (return to step 2).
7. COS displays available delivery times for the delivery date.
8. Person selects a delivery time and specifies the delivery location.
9. Person specifies payment method.
10. COS confirms acceptance of the order.
11. COS sends Person an email message confirming order details, price, and
delivery instructions.
12. COS stores order, sends food item information to Cafeteria Inventory System,
and updates available delivery times.
Alternative [Document legitimate branches from the main flow to handle special conditions
Flows: (also known as extensions). For each alternative flow reference the branching step
number of the normal flow and the condition which must be true for this extension
to be executed. e.g.
1.1 Order multiple identical meals
1. Person requests a specified number of identical meals. (refer 1.1. E1)
2. Return to step 4 of normal flow.
1.2 Order multiple meals
1. Person asks to order another meal.
2. Return to step 1 of normal flow.
Note: Insert a new row for each distinctive alternative flow. ]
Exceptions: 1.0. E1 Requested date is today and current time is after today’s order cutoff time
1. COS informs Person that it’s too late to place an order for today.
2a. If Person cancels the meal ordering process, then COS terminates use case.
2b. Else if Person requests another date, then COS restarts use case.
1.0. E2 No delivery times left
1. COS informs Person that no delivery times are available for the meal date.
12
September 23, 2024
[Project Name] [Document Name] [Version]
2a. If Person cancels the meal ordering process, then COS terminates use case.
2b. Else if Person requests to pick the order up at the cafeteria, then continue with
normal flow, but skip steps 7 and 8.
1.1. E1 Insufficient inventory to fulfill multiple meal order
1. COS informs Person of the maximum number of identical meals he can order
based on current available inventory.
2a. If Person modifies number of meals ordered, then return to step 4 of normal
flow.
2b. Else if Person cancels the meal ordering process, then COS terminates use case.
Business Rules Use cases and business rules are intertwined. Some business rules constrain which
roles can perform all or parts of a use case. Perhaps only users who have certain
privilege levels can perform specific alternative flows. That is, the rule might
impose preconditions that the system must test before letting the user proceed.
Business rules can influence specific steps in the normal flow by defining valid input
values or dictating how computations are to be performed e.g.
BR-1 Delivery time windows are 15 minutes, beginning on each quarter hour.
BR-2 Deliveries must be completed between 11:00 A.M. and 2:00 P.M. local time,
inclusive.
Note: If you are maintaining the business rule in a separate table in SRS then only
mention their IDs here.
Assumptions: [List any assumptions.
1. e.g. Assume that 15 percent of Persons will order the daily special (Source:
previous 6 months of cafeteria data).
Write all the use cases as per given tabular format w.r.t each module
Identifier FR-1
Title Title of requirement
Requirement Description of requirement which may be written either from the user or
system perspective e.g.
13
September 23, 2024
[Project Name] [Document Name] [Version]
3.5.1 Reliability
These cover requirements about how often the software fails. The measurement is often expressed in
MTBF (mean time between failures). The definition of a failure must be clear. Also, don't confuse
reliability with availability which is a different kind of requirement. Be sure to specify the
consequences of software failure, how to protect from failure, a strategy for error detection, and a
strategy for correction.
3.5.2 Usability
Usability requirements deal with ease of learning, ease of use, error avoidance and recovery, the
efficiency of interactions, and accessibility. The usability requirements specified here will help the
user interface designer create the optimal user experience.
Example:
USE-1: The COS shall allow a user to retrieve the previous meal ordered with a single interaction.
14
September 23, 2024
[Project Name] [Document Name] [Version]
3.5.3 Performance
State specific performance requirements for various system operations. If different functional
requirements or features have different performance requirements, it’s appropriate to specify those
performance goals right with the corresponding functional requirements, rather than collecting them
in this section.
Example:
PER-1: 95% of webpages generated by the COS shall download completely within 4 seconds from
the time the user requests the page over a 20 Mbps or faster Internet connection.
3.5.4 Security
There should be one or more requirements about protection of your system and its data. The
measurement can be expressed in a variety of ways (effort, skill level, time, ...) to break into the
system. Do not discuss solutions (e.g. passwords) in a requirements document.
3.5.5 Supportability
Supportability refers to the ease with which a system can be maintained, repaired, and supported over
its operational life.
Example:
SUR-1: The system shall achieve an average response time of less than 2 seconds under peak load
conditions.
15
September 23, 2024
[Project Name] [Document Name] [Version]
Document the user interface design details, such as specific dialog box layouts, in a separate user
interface specification, not in the SRS. Including screen mock-ups in the SRS to convey an additional
perspective of the requirements is helpful, but ensure it's clear that the mock-ups do not represent
finalized screen designs. If the SRS specifies enhancements to an existing system, it may be practical
to include screen displays exactly as they are to be implemented. Developers are already constrained
by the current reality of the existing system, making it possible to determine upfront what the
modified, and possibly new, screens should look like.
Example:
CI-1: The COS shall send an email or text message (based on user account settings) to the Person
to confirm acceptance of an order, price, and delivery instructions.
16
September 23, 2024
[Project Name] [Document Name] [Version]
Don’t go into too much detail about the individual subsystems. The main purpose is to gain
a general understanding of how and why the system was decomposed, and how the individual parts
work together.
• In initial design stage create Box and Line Diagram for simpler representation of the
systems
• After finalizing architecture style/pattern diagram (MVC, Client-Server, Layered,
Multi-tiered) create a detailed mapping modules/components to each part of the
architecture
Create design models as are applicable to your system. Provide detailed descriptions with each
of the models that you add. Also ensure visibility of all diagrams.
The applicable models for the project using object-oriented development approach may include:
• Activity Diagram (Total 10 to 12 Diagrams based on use cases, considering 1-2 diagrams
from each module major use cases, best is to create for all use cases)
• Class Diagram (Total 1 class diagram for overall system)
17
September 23, 2024
[Project Name] [Document Name] [Version]
The applicable models for the project using procedural approach may include:
• Activity Diagram
• Data Flow Diagram (data flow diagram should be extended to 2-3 levels. It should clearly
list all processes, their sources/Links, and data stores.)
• State Transition Diagram (for the projects which include event handling and backend
processes)
NOTE: You can design mockup in any design tool for example pencil tool
(https://pencil.evolus.vn/) or Balsamiq (https://balsamiq.com/)
To view examples of all above models, see Appendix B
18
September 23, 2024
[Project Name] [Document Name] [Version]
19
September 23, 2024
[Project Name] [Document Name] [Version]
6 Implementation
This chapter will discuss implementation details supported by UML diagrams (if applicable). You
will not put your source code here. Any of the following sections may be included based on your
project.
20
September 23, 2024
[Project Name] [Document Name] [Version]
21
September 23, 2024
[Project Name] [Document Name] [Version]
• At the Master test plan level this could be items such as:
▪ All lower level plans completed.
• A specified number of plans completed without errors and a
percentage with minor defects.
o This could be an individual test case level criterion or a unit level plan or it can be
general functional requirements for higher level plans.
o What is the number and severity of defects located?
o Is it possible to compare this to the total number of defects? This may be impossible,
as some defects are never detected.
o A defect is something that may cause a failure, and may be acceptable to leave in the
application.
o A failure is the result of a defect as seen by the User, the system crashes, etc.
22
September 23, 2024
[Project Name] [Document Name] [Version]
7.6 Verification
Verification evaluates software artifacts (such as requirements, design, code, etc.) to ensure
they meet the specified requirements and standards. It ensures the software is built according
to the needs and design specifications.
7.7 Validation
Validation evaluates software to meet the user’s needs and requirements. It ensures the software
fits its intended purpose and meets the user’s expectations.
23
September 23, 2024
[Project Name] [Document Name] [Version]
In a corporate web page, the end-user testers may be from end-user groups, management, or an
independent test team that takes the role of end users. In public web applications, the end-user
testers may be beta testers, who receive a prototype or early release of the new web application,
or independent testers who take the role of public web users.
When a developer manually runs their application and tries out the features they have coded,
they are doing manual testing. Its simplicity makes manual testing great for small-scale testing
of personal projects. Even for large-scale testing where there are thousands and millions of
items and features to test, manual testing is still needed to some degree.
.
7.14 Test Cases
Write the test cases of your project as per module wise. A sample test cases with format is mentioned.
24
September 23, 2024
[Project Name] [Document Name] [Version]
Expected Result: After execution, SLV should load text along with
images of PSL alphabets and display image slider.
Actual Result: After execution, SLV has loaded text along with
images of PSL alphabets and displayed image
slider.
Status: Pass
No. Test case/Test script Attribute and value Expected result Result
2.
No. Test case/Test script Attribute and value Expected result Result
1.
2.
Objective: To ensure that the correct page with the correct navigation bar is loaded.
No. Test case/Test script Attribute and value Expected result Result
2.
26
September 23, 2024
[Project Name] [Document Name] [Version]
7.16 Responsibilities
Who is in charge? There should be a responsible person for each aspect of the testing and the test
process. Each test task identified should also have a responsible person assigned.
27
September 23, 2024
[Project Name] [Document Name] [Version]
RTM consists of all the features of the codes and is traced against the measures that require testing.
Once this is developed it is maintained throughout the testing phase until the completed code goes to
release and gets deployed in production. It can be developed using Microsoft Excel.
(Note: See Appendix B for detailed example.)
28
September 23, 2024
[Project Name] [Document Name] [Version]
9.1 Conclusion
Conclude this document.
(Usually 4-5 sentences)
Example “To conclude we can say Smart Diabetolog application helps diabetes patient
maintain their lifestyle in a balanced way by tracking their health factors and providing customized
diet and exercise plans. It also maintains their medication and allergic reaction history to make the
plans more efficient and customizable. It also keeps a check on diabetes patient eyes disease by
checking his fundus images for retinopathy. Moreover, it also provides awareness to patients about
diabetes, so, we can say that our application Smart Diabetolog is a full package for maintaining a
diabetes patients lifestyle.”
29
September 23, 2024
[Project Name] [Document Name] [Version]
• Write all lessons that your learnt while doing this semester project
• Write both aspects Technical and Non-Technical.
• Each Group Member write its own lesson learn as well.
Lesson Learned
Student 1 Name:
Student 1 Registration Number:
Student 2 Name:
Student 2 Registration Number:
30
September 23, 2024
[Project Name] [Document Name] [Version]
31
September 23, 2024
[Project Name] [Document Name] [Version]
11 References
Mention the books, research papers, web links etc. (Usually 3-5 References)
Mention the books, research papers, web links by following given guideline.
Book
Author(s). Book title. Location: publishing Company, year, pp.
Example:
W.K. Chen. Linear Networks and Systems. Belmont, CA: Wadsworth, 1993, pp. 123-35.
Article in a Journal
Author(s). “Article title”. Journal title, vol., pp, date.
Example:
G. Pevere. “Infrared Nation.” The International Journal of Infrared Design, vol. 33, pp. 56-99, Jan. 1979.
• How to design using UML (OOP): For guidance please follow the instructions mentioned in
the link: http://agilemodeling.com/artifacts/
• How and when to design ER diagrams: For guidance please follow the instructions mentioned
in the link:
http://people.inf.elte.hu/nikovits/DB2/Ullman_The_Complete_Book.pdf
• Data flow diagrams: For guidance please follow the instructions mentioned in the link and
book:
o http://www.agilemodeling.com/artifacts/dataFlowDiagram.htm
o Software Engineering –A Practitioner’s approach by Roger Pressman
• Architecture diagram: For guidance please follow the instructions mentioned in the link and
book:
o Ian Sommerville – Software Engineering 9th Edition– Chapter 6
• Software Testing
o https://dahlan.unimal.ac.id/files/ebooks/2006%20[William_E._Perry]_Effective_Met
hods_for_Software_SANGAT_BAGUS.pdf
o Effective Methods for Software Testing Third Edition
32
September 23, 2024
[Project Name] [Document Name] [Version]
12 Plagiarism Report
Attach the Plagiarism report of your project requirement document from library staff of Turnitin
tool (http://turnitin.com) (Research Based projects only)
33
September 23, 2024
[Project Name] [Document Name] [Version]
13 Appendix A
A Work Breakdown Structure is a method of organizing and completing work in a project. With each
increasing level, more details are added. Basic structure is given in Figure A- 1, while detailed
example is provided in Table A- 1.
34
September 23, 2024
[Project Name] [Document Name] [Version]
35
September 23, 2024
[Project Name] [Document Name] [Version]
Resource % Work
Task Name Duration Start Finish Predecessors
Names Complete
Analysis 9 days Mon 6/10/24 Thu 6/20/24 88%
Requirement Meetings 4 days Mon 6/10/24 Thu 6/13/24 Rita; William 100%
Rita; William;
Communication with
2 days Fri 6/14/24 Mon 6/17/24 2 Tyler; Wenger; 96%
Stakeholders
Steve
Document Current
2 days Tue 6/18/24 Wed 6/19/24 3 William 100%
System
Analysis Finished 1 day Thu 6/20/24 Thu 6/20/24 4 Wenger 0%
Design 22 days Fri 6/21/24 Mon 7/22/24 14%
Design Database 5 days Fri 6/21/24 Thu 6/27/24 5 Steve 62%
Software Design 6 days Fri 6/28/24 Fri 7/5/24 7 Yvette 0%
Interface Design 3 days Mon 7/8/24 Wed 7/10/24 8 Zoe 0%
Create Design
7 days Thu 7/11/24 Fri 7/19/24 9 Steve 0%
Specifications
Design Finished 1 day Mon 7/22/24 Mon 7/22/24 10 Wenger 0%
Development 23 days Tue 7/23/24 Thu 8/22/24 21%
Develop System Module 12 days Tue 7/23/24 Wed 8/7/24 11 Tyler; Wenger 41%
Integrate System Module 7 days Thu 8/8/24 Fri 8/16/24 13 Tyler 0%
Perform Initial Testing 3 days Mon 8/19/24 Wed 8/21/24 14 Wenger 0%
Development Finished 1 day Thu 8/22/24 Thu 8/22/24 15 Wenger 0%
Testing 15 days Fri 8/23/24 Thu 9/12/24 28%
Perform System Testing 8 days Fri 8/23/24 Tue 9/3/24 16 Vicky 63%
Document Issues Found 3 days Wed 9/4/24 Fri 9/6/24 18 Mike 0%
Correct Issues Found 6 days Wed 9/4/24 Wed 9/11/24 18 Vicky 0%
Testing Finished 1 day Thu 9/12/24 Thu 9/12/24 20 Wenger 0%
Deployment 16 days Fri 9/13/24 Fri 10/4/24 0%
On-Site Installation 1 day Fri 9/13/24 Fri 9/13/24 21 Tyler 0%
Support Plan for the
15 days Mon 9/16/24 Fri 10/4/24 23 Mike 0%
System
Completion 9 days Mon 10/7/24 Thu 10/17/24 0%
System Maintenance 9 days Mon 10/7/24 Thu 10/17/24 24 Rita 0%
Evaluation 9 days Mon 10/7/24 Thu 10/17/24 24 William 0%
36
September 23, 2024
[Project Name] [Document Name] [Version]
37
September 23, 2024
[Project Name] [Document Name] [Version]
The Cafeteria Ordering System is a new software system that replaces the current manual and telephone
processes for ordering and picking up meals in the Process Impact cafeteria. The context diagram in Figure
A- 3.
38
September 23, 2024
[Project Name] [Document Name] [Version]
Table A- 3: Shows user classes and characteristic for Cafeteria ordering system
Cafeteria The Process Impact cafeteria employs about 20 Cafeteria Staff who will receive
Staff orders from the COS, prepare meals, package them for delivery, and request delivery.
Most of the Cafeteria Staff will need training in the use of the hardware and software
for the COS.
Menu The Menu Manager is a cafeteria employee who establishes and maintains daily
Manager menus of the food items available from the cafeteria. Some menu items may not be
available for delivery. The Menu Manager will also define the cafeteria’s daily
specials. The Menu Manager will need to edit existing menus periodically.
Meal As the Cafeteria Staff prepare orders for delivery, they will issue delivery requests to
Deliverer a Meal Deliverer’s smartphone. The Meal Deliverer will pick up the food and deliver
it to the Person. A Meal Deliverer's other interactions with the COS will be to confirm
that a meal was (or was not) delivered.
39
September 23, 2024
[Project Name] [Document Name] [Version]
14 Appendix B
Following use case diagram is of an appointment system in which all the use case diagram relationships
are presented. In further in Table- B 1 to the detail of use case diagram syntax is provided.
40
September 23, 2024
[Project Name] [Document Name] [Version]
An actor:
■ A person or system that derives benefit from, and is external to, the
subject.
■ Is depicted as either a stick figure (default) or, if a nonhuman actor is
involved, a rectangle with <<actor>> in it (alternative).
■ Is labeled with its role.
■ Can be associated with other actors using a specialization/superclass
association, denoted by an arrow with a hollow arrowhead.
■ Is placed outside the subject boundary.
A use case:
■ Represents a major piece of system functionality.
■ Can extend another use case.
■ Can include another use case.
■ Is placed inside the system boundary.
■ Is labeled with a descriptive verb–noun phrase.
subject boundary:
■ Includes the name of the subject inside or on top.
■ Represents the scope of the subject, e.g., a system or an individual
business process.
An association relationship:
■ Links an actor with the use case(s) with which it interacts.
An include relationship:
■ Represents the inclusion of the functionality of one use case within
another.
■ Has an arrow drawn from the base use case to the used use case.
An extend relationship:
■ Represents the extension of the use case to include optional behavior.
■ Has an arrow drawn from the extension use case to the base use case.
A generalization relationship:
■ Represents a specialized use case to a more generalized one.
■ Has an arrow drawn from the specialized use case to the base use
case.
41
September 23, 2024
[Project Name] [Document Name] [Version]
Use Case ID: Enter a unique numeric identifier for the Use Case. e.g. UC-1
Use Case Name: Enter a short name for the Use Case using an active verb phrase. e.g.
Order a Meal
Actors: [An actor is a person or other entity external to the software system being specified
who interacts with the system and performs use cases to accomplish tasks.] e.g.
Primary Actor: Person Secondary Actors: Cafeteria Inventory System
Description: [Provide a brief description of the reason for and outcome of this use case.] e.g.
A Person accesses the Cafeteria Ordering System from either the corporate intranet
or external Internet, views the menu for a specific date, selects food items, and
places an order for a meal to be picked up in the cafeteria or delivered to a specified
location within a specified 15-minute time window.
Trigger: [Identify the event that initiates the use case.]e.g.
A Person indicates that he wants to order a meal.
Preconditions: [List any activities that must take place, or any conditions that must be true, before
the use case can be started.
PRE-1. Person is logged into COS.
PRE-2. Person is registered for meal payments by payroll deduction.
Post conditions: [Describe the state of the system at the conclusion of the use case execution.
POST-1. Meal order is stored in COS with a status of “Accepted.”
POST-2. Inventory of available food items is updated to reflect items in this order.
POST-3. Remaining delivery capacity for the requested time window is updated.
Normal Flow: [Provide a detailed description of the user actions and system responses that will
take place during execution of the use case under normal, expected conditions.
1.0 Order a Single Meal
1. Person asks to view menu for a specific date. (refer 1.0. E1, 1.0.E2)
2. COS displays menu of available food items and the daily special.
3. Person selects one or more food items from menu. (refer 1.1)
4. Person indicates that meal order is complete. (refer 1.2)
5. COS displays ordered menu items, individual prices, and total price, including
taxes and delivery charge.
6. Person either confirms meal order (continue normal flow) or requests to modify
meal order (return to step 2).
7. COS displays available delivery times for the delivery date.
8. Person selects a delivery time and specifies the delivery location.
9. Person specifies payment method.
10. COS confirms acceptance of the order.
11. COS sends Person an email message confirming order details, price, and
delivery instructions.
12. COS stores order, sends food item information to Cafeteria Inventory System,
and updates available delivery times.
42
September 23, 2024
[Project Name] [Document Name] [Version]
Alternative [Document legitimate branches from the main flow to handle special conditions
Flows: (also known as extensions). For each alternative flow reference the branching step
number of the normal flow and the condition which must be true for this extension
to be executed. e.g.
1.1 Order multiple identical meals
1. Person requests a specified number of identical meals. (refer 1.1. E1)
2. Return to step 4 of normal flow.
1.2 Order multiple meals
1. Person asks to order another meal.
2. Return to step 1 of normal flow.
Note: Insert a new row for each distinctive alternative flow. ]
Exceptions: 1.0. E1 Requested date is today and current time is after today’s order cutoff time
1. COS informs Person that it’s too late to place an order for today.
2a. If Person cancels the meal ordering process, then COS terminates use case.
2b. Else if Person requests another date, then COS restarts use case.
1.0. E2 No delivery times left
1. COS informs Person that no delivery times are available for the meal date.
2a. If Person cancels the meal ordering process, then COS terminates use case.
2b. Else if Person requests to pick the order up at the cafeteria, then continue with
normal flow, but skip steps 7 and 8.
1.1. E1 Insufficient inventory to fulfill multiple meal order
1. COS informs Person of the maximum number of identical meals he can order,
based on current available inventory.
2a. If Person modifies number of meals ordered, then return to step 4 of normal
flow.
2b. Else if Person cancels the meal ordering process, then COS terminates use case.
Business Rules Use cases and business rules are intertwined. Some business rules constrain which
roles can perform all or parts of a use case. Perhaps only users who have certain
privilege levels can perform specific alternative flows. That is, the rule might
impose preconditions that the system must test before letting the user proceed.
Business rules can influence specific steps in the normal flow by defining valid input
values or dictating how computations are to be performed e.g.
BR-1 Delivery time windows are 15 minutes, beginning on each quarter hour.
BR-2 Deliveries must be completed between 11:00 A.M. and 2:00 P.M. local time,
inclusive.
Note: If you are maintaining the business rule in a separate table in SRS then only
mention here their IDs.
Assumptions: [List any assumptions.
2. e.g. Assume that 15 percent of Persons will order the daily special (Source:
previous 6 months of cafeteria data).
43
September 23, 2024
[Project Name] [Document Name] [Version]
The highway intersection system described earlier has to deal with various events, including these:
• A sensor detects a car approaching in one of the through lanes.
• A sensor detects a car approaching in a left-turn lane.
• A pedestrian presses a button to request to cross a street.
• One of many timers counts down to zero.
Table- B 3 presents a fragment of what an event-response table might look like for such a system. Each
expected system behavior consists of a combination of event, system state, and response.
Note: You may add more information to event-response table in order to perform detail requirement
analysis which includes:
• The event frequency (how many times the event takes place in a given time period, or a limit to
how many times it can occur).
• Data elements that are needed to process the event.
• The state of the system after the event responses are executed.
45
September 23, 2024
[Project Name] [Document Name] [Version]
46
September 23, 2024
[Project Name] [Document Name] [Version]
Box-and-line diagrams are often used to describe the business concepts and processes during the analysis
phase of the software development lifecycle. These diagrams come with descriptions of components and
connectors, as well as other descriptions that provide common inherent interpretations.
Example:
Lines in the box-and-line diagrams indicate the relationship among components
• The semantic of lines may refer dependency, control flow, data flow, etc.
• Lines may be associated with arrows to indicate the process direction and sequence.
• A box-and-line diagram can be used as a business concept diagram describing its application domain
and process concepts
The Table- B 3 shows an example of the logical package organization of the layered architecture. The top-
level deals with user interface, the next level is for utilities, and the one below utility provides core services.
Each layer gets support from its lower adjacent layer by an interface implementation and from the related
classes in the same layer.
47
September 23, 2024
[Project Name] [Document Name] [Version]
A simple software system may consist of two layers: an interaction layer and a processing layer:
• The interaction layer provides user interfaces to clients, takes requests, validates, and forwards
requests to the processing layer for processing, and responds to clients.
• The processing layer receives the forwarded requests and performs the business logic process,
accesses the database, returns the results to its upper layer, and lets the upper layer respond to clients
since the upper layer has the GUI interface responsibility.
Note: The Architecture pattern shall be selected according to the targeted system’s requirements and quality
attributes. Above example is provided to demonstrate that how the system architecture is required to be
presented.
48
September 23, 2024
[Project Name] [Document Name] [Version]
Following activity diagram is of an appointment system presenting make an appointment process in which
all diagram’s elements are presented. In further in Table- B 4 to the detail of activity diagram syntax is
provided.
Example
A fork node:
▪ Is used to split behavior into a set of parallel or concurrent
flows of activities (or action)
A join node:
▪ Is used to bring back together a set of parallel or concurrent
flows of activities (or action)
50
September 23, 2024
[Project Name] [Document Name] [Version]
A swimlane:
▪ Is used to break up an activity diagram into rows and columns
to assign the individual activities (or actions) to the individuals
or objects that are responsible for executing the activity (or
action)
▪ Is labeled with the name of the individual or object responsible
Following class diagram is of an appointment system in which all class diagrams elements are presented. In
further in Table- B 5 to the detail of class diagram syntax is provided.
Example
51
September 23, 2024
[Project Name] [Document Name] [Version]
A generalization:
▪ Represents a-kind-of relationship between multiple classes.
An aggregation:
▪ Represents a logical a-part-of relationship between multiple
classes or a class and itself.
▪ It is a special form of an association
A composition:
▪ Represents a physical a-part-of relationship between multiple
classes or a class and itself
▪ It is a special form of an association
52
September 23, 2024
[Project Name] [Document Name] [Version]
Following example shows an instance sequence diagram that depicts the objects and messages for the Make
Old Patient Appointment use case, which describes the process by which an existing patient creates a new
appointment or cancels or reschedules an appointment. In further in Table- B 6 to the detail of class diagram
syntax is provided.
Example
53
September 23, 2024
[Project Name] [Document Name] [Version]
An execution occurrence:
▪ Is a long narrow rectangle placed atop a lifeline
▪ Denotes when an object is sending or receiving messages.
A message:
▪ Conveys information from one object to another one.
▪ An operation call is labeled with the message being sent and a
solid arrow, whereas a return is labeled with the value being
returned and shown as a dashed arrow.
A guard condition:
▪ Represents a test that must be met for the message to be sent.
54
September 23, 2024
[Project Name] [Document Name] [Version]
Following example of a behavioral state machine representing the patient class in the context of a hospital
environment. From this diagram, we can tell that a patient enters a hospital and is admitted after checking
in. If a doctor finds the patient to be healthy, he or she is released and is no longer considered a patient after
two weeks elapse. If a patient is found to be unhealthy, he or she remains under observation until the
diagnosis changes.
Example
55
September 23, 2024
[Project Name] [Document Name] [Version]
An initial state:
▪ Is shown as a small, filled-in circle.
▪ Represents the point at which an object begins to exist.
A final state:
▪ Is shown as a circle surrounding a small, filled-in circle
(bull's-eye).
▪ Represents the completion of activity.
An event:
▪ It’s a noteworthy occurrence that triggers a change in state.
▪ Can be a designated condition becoming true, the receipt of
an explicit signal from one object to another, or the passage
of a designated period of time.
▪ Is used to label a transition.
A transition:
▪ Indicates that an object in the first state will enter the second
state.
▪ Is triggered by the occurrence of the event labeling the
transition.
▪ Is shown as a solid arrow from one state to another, labeled
by the event name.
A frame:
▪ Indicates the context of the behavioral state machine.
56
September 23, 2024
[Project Name] [Document Name] [Version]
Figure B- 8: Data flow diagram symbols, symbol names, and examples of the Gane and
Sarson and Yourdon symbol sets.
Step 1: Draw a Context Diagram: The first step in constructing a set of DFDs is to draw a context diagram.
A context diagram is a top-level view of an information system that shows the system’s boundaries and
scope. Data stores are not shown in the context diagram because they are contained within the system and
remain hidden until more detailed diagrams are created.
57
September 23, 2024
[Project Name] [Document Name] [Version]
Example
Step 2: Draw a Diagram 0 DFD: To show the detail inside the black box, you create DFD diagram 0.
Diagram 0 zooms in on the system and shows major internal processes, data flows, and data stores. Diagram
0 also repeats the entities and data flows that appear in the context diagram. When you expand the context
diagram into DFD diagram 0, you must retain all the connections that flow into and out of process 0.
58
September 23, 2024
[Project Name] [Document Name] [Version]
Example
59
September 23, 2024
[Project Name] [Document Name] [Version]
To create lower-level diagrams, you must use leveling and balancing techniques. Leveling is the process
of drawing a series of increasingly detailed diagrams, until all functional primitives are identified.
Figure B- 11: Diagram 1 DFD shows details of the FILL ORDER process in the order system.
Leveling Example
Balancing maintains consistency among a set of DFDs by ensuring that input and output data flows
align properly.
60
September 23, 2024
[Project Name] [Document Name] [Version]
Balancing Example
61
September 23, 2024
[Project Name] [Document Name] [Version]
The order system diagram 0 is shown at the top of the figure and exploded diagram 3 DFD (for the APPLY
PAYMENT process) is shown at the bottom. The two DFDs are balanced, because child diagram at the
bottom has the same input and output flows as the parent process 3 shown at the top.
62
September 23, 2024
[Project Name] [Document Name] [Version]
Register screen: The register button registers the user with the given details into the system.
Login screen: The login button signs the user into the system.
Home: The medications, allergic reaction, diet, exercise, chat buttons directs the user to the main screen of
those modules.
Medicine: The diabetic medications directs the user to the diabetic medication screen.
Medicine: The non-diabetic medications directs the user to the non-diabetic medication screen.
Physical activity: The start button initiates the physical activity plan for the day.
Allergic Reaction Screen: The diabetic medication displays all the diabetic allergic reactions stored in the
system.
Non-diabetic Medication: The non-diabetic medication displays all the non-diabetic allergic reactions stored
in the system.
Allergic Reaction Screen: The insulin displays all the insulin allergic reactions stored in the system.
Allergic Reaction Screen: The food displays all the food allergic reactions stored in the system.
Meal Plan Screen: The view recipe button displays the recipe of the food.
Meal Plan Screen: The add to favorite button add the recipe to the favorite
Meal Plan Screen: The view favorite list button displays the list of the user’s favorite recipes.
Tracker Main Screen: The blood glucose displays all blood glucose instances of the day stored by user.
Tracker Main Screen: The blood pressure displays all blood pressure instances of the eek stored by user.
Tracker Main Screen: The cholesterol displays all cholesterol instances of 6 months stored by user.
Blood Sugar Statics Screen: The today button displays the statistics of all today’s blood sugar instances.
Blood Sugar Statics Screen: The week button displays the statistics of all blood sugar instances of the week.
Blood Sugar Statics Screen: The month button displays the statistics of all blood sugar instances of the
month.
Blood Sugar Statics Screen: The year button displays the statistics of all blood sugar instances of the year.
63
September 23, 2024
[Project Name] [Document Name] [Version]
Description: This screen shows the admins’ home page containing options for profile setting. To change setting user
shall select the ‘settings’ link and account details will be opened in editable mode.
Description: This displays the home page of website with navigable links for ‘About us’, ‘News’.
Data Dictionary
Allergic Reaction
This scheme saves the allergic reaction details of the patient.
allergicReaction_id: String
name:String
type: String
symptoms:String[]
description:String
user_id: String 200
Blood Pressure
This schema saves the blood pressure details of the patient.
bloodPressure_id : String
systolic: Integer
diastolic: Integer
date: Date
description: String
user_id: String
64
September 23, 2024
[Project Name] [Document Name] [Version]
Blood Sugar
This schema saves the blood glucose concentration of the patient.
bloodSugar_id : String
concentration: Integer
unit: Enum[mmol/L, mg/dL]
description: String
time: Time
date: Date
event: String
description: String
creationDate: Date
creationTime: Time
user_id: String
Cholesterol
This schema saves the cholesterol details of the patient.
cholesterol_id: String
cholesterol: Integer
ldl: Integer
hdl: Integer
triglycerides: Integer
description: String
user_id: String
65
September 23, 2024
[Project Name] [Document Name] [Version]
Example
ERD Syntax
66
September 23, 2024
[Project Name] [Document Name] [Version]
Attribute:
▪ An attribute is a property that describes a particular entity.
▪ The attribute(s) that uniquely distinguishes an instance of
the entity is the identifier. Usually, this type of attribute is
marked with an asterisk.
Relationships:
▪ Relationships illustrate the association between two entities.
They are presented as a straight line. Usually, each
relationship has a name, expressed as a verb, written on the
relationship line. This describes what kind of relationship
connects the objects.
▪ Note that the mentioned type of relationship is binary. In
the Entity-Relationship model, representing a ternary or
higher order of relationship is problematic.
▪ Relationships have two indicators. These are shown on both
sides of the line.
Multiplicity of One:
Multiplicity of One:
Optional
Zero or many
One or many
67
September 23, 2024
[Project Name] [Document Name] [Version]
One or one
Zero or one
68
September 23, 2024
[Project Name] [Document Name] [Version]
ID Requirement ID Requirement Description Use Case Sequence Test Case ID UI ID Tested on/Verified Tested By
ID Diagram
1 FR-1 Description here, should be in 2 3 UC-01 1 TC-001 UI-1 Verified Member 1, 2
lines
2 FR-2 Description here, should be in 2 3 UC-02 2 TC-002 UI-2 Not Verified Member 2
lines
3 FR-3 Description here, should be in 2 3 UC-03 3 TC-003 UI-3 In Progress Member 3
lines
4 FR-4 Description here, should be in 2 3 UC-04 4 TC-004 UI-4 Pending Member 4
lines
69
September 23, 2024
[Project Name] [Document Name] [Version]
15 Appendix C
15.1 Deliverable Details for Capstone 1
Deliverable No. Due Time Deliverable Name Report Section to Be Complete
1 Week 1 Proposal Submission 1. Introduction
2. Project Background
3. Comparative Analysis
4. Advantages/Benefits of Proposed System
5. Project Scope
6. Modules
7. System Limitations/Constraints
8. Tools and Technologies
9. Problem Definition
70
September 23, 2024
[Project Name] [Document Name] [Version]
5. Functional Requirements (Tabular FR- Module Wise)
6. Non-Functional Requirements
7. External Interface Requirements
71
September 23, 2024
[Project Name] [Document Name] [Version]
15.2 Deliverable Details for Capstone 2
Deliverable No. Due Time Deliverable Name Report Section To Be Complete
1 Week 2 Test Cases 1. Testing and Evaluation
2. Test Plan
3. Product Scope
4. Intended Audience
5. Definitions, Acronyms and Abbreviations
6. Test Pass/ Fail Criteria
7. Verification
8. Validation
9. Usability Testing
10. Module / Unit Testing
11. Integration Testing
12. System Testing
13. Acceptance Testing
14. Manual Testing
15. Test Cases
3 Week 12 100% Coomplete Document and Project Along with following tasks
Implementation
1. Human Interface Design
2. Screen Images
3. Models and Animations
72
September 23, 2024
[Project Name] [Document Name] [Version]
4. Screen Objects and Actions
5. Implementation
6. User Interface/ Front End
7. Brief Overview of the Proposed System
8. External APIs
9. Requirement Traceability Matric
10. Conclusion and Future Work
11. Conclusion
12. Future Work
13. Work Summary and Reviews
14. Lesson Learnt
15. Work Break Down
16. Reviews Details
17. References
18. Plagiarism Report
5 Week 14 Code Review/Pre- Complete project work along with its Complete Documentation
Final Evaluation
6 Week 15 Capstone 2 Final Complete project work along with its Complete Documentation
Presentation
73
September 23, 2024
[Project Name] [Document Name] [Version]
2. By providing a comprehensive style guide the students to benefits to from a consistent and
professional look to its internal project reports.
3. The style guide also allows the students to properly control the size restrictions that are placed on
reports.
The remainder of this document briefly outlines the main components and suggested use of this style guide.
● Author – the style used for the author’s name on the front page.
● Bulleted List – the style for a standard bulleted list such as this one.
● Numbered List – similar to the bulleted list style except that the list is numbered.
74
September 23, 2024
[Project Name] [Document Name] [Version]
Normally, styles are selected from the Word style menu, which is located on the main Word toolbar (see
following Figure 1.
Figure 5: Selecting the Heading 1 style from the Word style menu
To help you with the standard styles, a new toolbar has been added to the top left of this document;
if you cannot see it then select the toolbar called Report in the Toolbar menu within the View menu.
This new toolbar displays a set of buttons for each of the main standard styles used in this document.
Just click on a style button to activate the corresponding style (see Following Figure).
Figure 6: The report style toolbar provides easy access to the approved styles.
It is important to emphasise that the above styles are the only styles that are approved for use in your
report. Word comes with an expanded set of pre-defined styles and of course you can, in theory,
define your own styles. However, we strongly suggest that you to stick to the approved styles. Of
course, you may have a genuine need for a new style during the preparation of your report. However,
we suggest that you consider whether one of the approved styles can be used before you rush to
create a new style. For example, we have not defined a specific style for the bibliographic entries
that you will need at the end of your report.
75
September 23, 2024
[Project Name] [Document Name] [Version]
17 Headings
Your report will be structured as a collection of number sections at different levels of detail. For example,
the heading to this section is a first-level heading (it’s called Heading 1) and has been defined with a
particular set of font and spacing characteristics. At the start of a new section, you need to select the
appropriate heading style, Heading 1 in this case, by clicking H1 on the new style toolbar.
76
September 23, 2024
[Project Name] [Document Name] [Version]
17.1.1 Third Level Headings
The heading for this subsection is a third level heading. In general, it is unlikely that fourth of fifth level
headings will be required in your final report. Indeed it is more likely that if you do find yourself needing
them, then your document structure is probably not ideal. So, try to stick to three levels of heading provided.
77
September 23, 2024