SOLUTION: Zoo Administration Software Design Paper

Software Design Document (SDD) Template
Software design is a process by which the software requirements are translated into a
representation of software components, interfaces, and data necessary for the
implementation phase. The SDD shows how the software system will be structured to
satisfy the requirements. It is the primary reference for code development and, therefore,
it must contain all the information required by a programmer to write code. The SDD is
performed in two stages. The first is a preliminary design in which the overall system
architecture and data architecture is defined. In the second stage, i.e. the detailed design
stage, more detailed data structures are defined and algorithms are developed for the
defined architecture.
This template is an annotated outline for a software design document adapted from the
IEEE Recommended Practice for Software Design Descriptions. The IEEE
Recommended Practice for Software Design Descriptions have been reduced in order to
simplify this assignment while still retaining the main components and providing a
general idea of a project definition report. For your own information, please refer to IEEE
Std 10161998 for the full IEEE
Recommended Practice for Software Design Descriptions.
(Team Name)
(Project Title)
Software Design Document
Name (s):
Lab Section:
Workstation:
Date: (mm/dd/yyyy)
Software Detail Design
Page 2
Table of Contents
1
INTRODUCTION …………………………………………………………………………………………………. 4
1.1
1.2
1.3
1.4
1.5
2
3
4
5
6
Purpose …………………………………………………………………………………………………………………… 4
Scope ……………………………………………………………………………………………………………………….. 4
Overview…………………………………………………………………………………………………………………. 4
Reference Material………………………………………………………………………………………………… 4
Definitions and Acronyms ……………………………………………………………………………………. 4
SYSTEM OVERVIEW …………………………………………………………………………………………… 4
SYSTEM ARCHITECTURE ………………………………………………………………………………….. 4
3.1
3.2
3.3
3.4
Architectural Design …………………………………………………………………………………………….. 4
Decomposition Description …………………………………………………………………………………. 4
Exception Handling……………………………………………………………………………………………….. 5
Design Rationale ……………………………………………………………………………………………………. 5
DATA DESIGN ……………………………………………………………………………………………………… 5
4.1
4.2
Data Description ……………………………………………………………………………………………………. 5
Data Dictionary ……………………………………………………………………………………………………… 5
COMPONENT DESIGN ………………………………………………………………………………………… 5
HUMAN INTERFACE DESIGN …………………………………………………………………………….. 6
6.1
6.2
6.3
Overview of User Interface ………………………………………………………………………………….. 6
Screen Images ………………………………………………………………………………………………………… 6
Screen Objects and Actions ………………………………………………………………………………….. 6
7
REQUIREMENTS MATRIX …………………………………………………………………………………. 6
8
APPENDICES ……………………………………………………………………………………………………….. 6
Software Detail Design
Page 3
1
INTRODUCTION
1.1 Purpose
Identify the purpose of this SDD and its intended audience. (e.g. “This software
design document describes the architecture and system design of XX. ….”).
1.2 Scope
Provide a description and scope of the software and explain the goals, objectives
and benefits of your project. This will provide the basis for the brief description of
your product.
1.3 Overview
Provide an overview of this document and its organization.
1.4 Reference Material
This section is optional.
List any documents, if any, which were used as sources of information for the test plan.
1.5 Definitions and Acronyms
This section is optional.
Provide definitions of all terms, acronyms, and abbreviations that might exist to
properly interpret the SDD. These definitions should be items used in the SDD that
are most likely not known to the audience.
2 SYSTEM OVERVIEW
Give a general description of the functionality, context and design of your project.
Provide any background information if necessary.
3 SYSTEM ARCHITECTURE
3.1 Architectural Design
Develop a modular program structure and explain the relationships between the modules
to achieve the complete functionality of the system. This is a high level overview of how
responsibilities of the system were partitioned and then assigned to subsystems. Identify
each high level subsystem and the roles or responsibilities assigned to it. Describe how
these subsystems collaborate with each other in order to achieve the desired functionality.
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. Provide a diagram showing the major subsystems and
data repositories and their interconnections. Describe the diagram if required.
3.2 Decomposition Description
Provide a decomposition of the subsystems in the architectural design. Supplement
Software Detail Design
Page 4
with text as needed. You may choose to give a functional description or an
objectoriented description. For a functional description, put toplevel data flow
diagram (DFD) and structural decomposition diagrams. For an OO description, put
subsystem model, object diagrams, generalization hierarchy diagram(s) (if any),
aggregation hierarchy diagram(s) (if any), interface specifications, and sequence
diagrams here.
3.3 Exception Handling
Discuss what new exceptions the system will define and how and where they will be
used.
3.4 Design Rationale
Discuss the rationale for selecting the architecture described in 3.1 including critical
issues and trade/offs that were considered. You may discuss other architectures that were
considered, provided that you explain why you didn’t choose them.
4 DATA DESIGN
4.1 Data Description
Explain how the information domain of your system is transformed into data structures.
Describe how the major data or system entities are stored, processed and organized. List
any databases or data storage items.
4.2 Data Dictionary
Alphabetically list the system entities or major data along with their types and
descriptions. If you provided a functional description in Section 3.2, list all the functions
and function parameters. If you provided an OO description, list the objects and its
attributes, methods and method parameters.
5 COMPONENT DESIGN
In this section, we take a closer look at what each component does in a more systematic
way. For OO description, summarize each object member function for all the objects
listed in 3.2 in PDL or pseudocode. Describe any local data when necessary. Use the
class template (Class Name, Class Description, Class Modifiers, Class Inheritance,
Class Attributes, Exceptions Thrown, and Class Methods) for each class.
Class Name:
Class Description/Purpose:
Class Modifiers:
Class Inheritance:
Class Attributes:
Exceptions Thrown:
Class Methods:
Software Detail Design
Page 5
Class Name:
Class Description/Purpose:
Class Modifiers:
Class Inheritance:
Class Attributes:
Exceptions Thrown:
Class Methods:
6 HUMAN INTERFACE DESIGN
6.1 Overview of User Interface
Describe the functionality of the system from the user’s perspective. Explain how the
user will be able to use your system to complete all the expected features and the
feedback information that will be displayed for the user.
6.2 Screen Images
Display screenshots showing the interface from the user’s perspective. These can be
handdrawn or you can use an automated drawing tool. Just make them as accurate as
possible.
(Graph paper works well.)
6.3 Screen Objects and Actions
A discussion of screen objects and actions associated with those objects.
7 REQUIREMENTS MATRIX
Provide a crossreference that traces components and data structures to the requirements in
your SRS document. Use a tabular format to show which system components satisfy each
of the functional requirements from the SRS. Refer to the functional requirements by the
numbers/codes that you gave them in the SRS.
8 APPENDICES
This section is optional.
Appendices may be included, either directly or by reference, to provide supporting details
that could aid in the understanding of the Software Design Document.
Software Detail Design
Page 6
Checklist
Comment
Deduction
Improvement from Week 5 (Polymorphism):
Subclasses mammal, reptile, and bird (or their subclasses if you have) should have
the life expectancy calculation method overriding the one in their superclass,
animal, if they have a different calculation. Good.
Override
There are more than one constructors (overloading) for classes zoo, mammal,
reptile, and bird. For example, in zoo, you can change open file method to a
constructor, so that you can use it to initialize a zoo object with the data in a file.
Similarly, change the load from string method to a constructor in those animal’s
subclasses. Good.
Overload
Additional note: None.
Others
Tasks for Week 6 (Encapsulation):
Attributes
Methods /
Constructors
Others
The attributes in each class should have proper access modifier (public, private,
etc.) . Animal attributes should not be private. Or they can’t be inherited by
subclasses.
The methods/constructors in each class should have proper access modifier
(public, private, etc.) . Well done.
Additional note: None.
Total Deduction:
Your Score:
Note: Checklist and Comment in black are expectations. Comment in blue is feedback to meet expectations
-5
-5
95
Checklist
Comment
Deduction
Improvement from Week 6 (Encapsulation):
The attributes in each class should have proper access modifier (public, private,
etc.) . Your attributes in Animal class are still private. They will not be inherited or
-5
accessible to the subclasses. For example, a mammal object will not have age or
birthDate.
Attributes
The methods/constructors in each class should have proper access modifier
(public, private, etc.) . Good.
Methods / Constructors
Additional note: None.
Others
Tasks for Week 7 (Exception):
Create at least one exception class extending Java RuntimeException class. The
Exception
exception class should extend RuntimeException class. You don’t need to draw
-5
Class
relationship between those classes.
The created exception class(es) should have proper attribute(s) and
Attributes /
constructor(s). They are missing in your diagram. See the trip organizer example
-10
Methods
for reference.
Additional note: None.
Others
Total Deduction:
-20
Your Score:
80
Note: Checklist and Comment in black are expectations. Comment in blue is feedback to meet expectations
Checklist
Improvement from Week 4 (Constructor):
Comment
There is at least one constructor for classes zoo, mammal, reptile, and bird. Good.
one constructor in mammal, reptile, and bird should have the parameters
covering all attributes (its own and inheriting from animal class). Good.
Parameters
Additional note: None.
Others
Tasks for Week 5 (Polymorphism):
Subclasses mammal, reptile, and bird (or their subclasses if you have) should have
the life expectancy calculation method overriding the one in their superclass,
animal, if they have a different calculation. Didn’t see this in your diagram. Need
to add.
Override
There are more than one constructors (overloading) for classes zoo, mammal,
reptile, and bird. For example, in zoo, you can change open file method to a
constructor, so that you can use it to initialize a zoo object with the data in a file.
Similarly, change the load from string method to a constructor in those animal’s
subclasses. Good to have multiple constructors. you can still covert those load
from string to constructors.
Overload
You can also change the conver to string method to toString() to override the
standard one in the animal’s subclasses. Well done.
Others
Total Deduction:
Your Score:
Deduction
Constructor
-10
-10
90
Note: Checklist and Comment in black are expectations. Comment in blue is feedback to meet expectations

Purchase answer to see full
attachment

Order a unique copy of this paper
(550 words)

Approximate price: $22

Our Basic features
  • Free title page and bibliography
  • Plagiarism-free guarantee
  • Unlimited revisions
  • Money-back guarantee
  • 24/7 support
Our Options
  • Writer’s samples
  • Expert Proofreading
  • Overnight delivery
  • Part-by-part delivery
  • Copies of used sources
Paper format
  • 275 words per page
  • 12 pt Arial/Times New Roman
  • Double line spacing
  • Any citation style (APA, MLA, Chicago/Turabian, Harvard)

AcademicWritingCompany guarantees

Our customer is the center of what we do and thus we offer 100% original essays..
By ordering our essays, you are guaranteed the best quality through our qualified experts.All your information and everything that you do on our website is kept completely confidential.

Money-back guarantee

Academicwritingcompany.com always strives to give you the best of its services. As a custom essay writing service, we are 100% sure of our services. That is why we ensure that our guarantee of money-back stands, always

Read more

Zero-plagiarism tolerance guarantee

The paper that you order at academicwritingcompany.com is 100% original. We ensure that regardless of the position you are, be it with urgent deadlines or hard essays, we give you a paper that is free of plagiarism. We even check our orders with the most advanced anti-plagiarism software in the industry.

Read more

Free-revision guarantee

The Academicwritingcompany.com thrives on excellence and thus we help ensure the Customer’s total satisfaction with the completed Order.To do so, we provide a Free Revision policy as a courtesy service. To receive free revision the Academic writing Company requires that the you provide the request within Fifteen (14) days since the completion date and within a period of thirty (30) days for dissertations and research papers.

Read more

Privacy and Security policy

With Academicwritingcompan.com, your privacy is the most important aspect. First, the academic writing company will never resell your personal information, which include credit cards, to any third party. Not even your lecturer on institution will know that you bought an essay from our academic writing company.

Read more

Adherence to requirements guarantee

The academic writing company writers know that following essay instructions is the most important part of academic writing. The expert writers will, therefore, work extra hard to ensure that they cooperate with all the requirements without fail. We also count on you to help us provide a better academic paper.

Read more

Calculate the price of your order

550 words
We'll send you the first draft for approval by September 11, 2020 at 10:52 AM
Total price:
$26
The price is based on these factors:
Customer Academic level
Number of pages required
Urgency of paper