Beruflich Dokumente
Kultur Dokumente
Contents
Problem statement
4/15 refinements Problem statement
4/20
5/8
5/22
beginning date
5/27 Implementation & Implementation &
Demo Demo report due date
expected report
6/5
phase
2
2. Candidate Projects
3
2.1 Hotel Reservation System
The hotelier of KAIST Hotel wants to develop a new hotel reservation system that will
allow reservation to be made via Internet. In this system, not only the hotel staff but
also customers can make a reservation.
When making a reservation, a customer must register his/her personal information.
To speed up the process, details of previous customers will be stored and made
available later. By this system, the customer can make a reservation and cancel it.
When making a reservation, the customer can choose the number of rooms (how many
rooms do you want?), the type of rooms (Single, Double, Suite). When check in, the
customer can choose which rooms to use. After the reservation, the customer will get
an e-mail of the details of the reservation.
Within a hotel, there is a reservation administrator who is responsible for controlling
reservations at the hotel. He/she is also responsible for processing no-shows (when the
customer doesn’t show up at reserved date) and can make a reservation for a customer.
You should refine above problem statement. That means, you can define your own
business purpose based on the given problem statement, and you can consider some
additional functionalities to clarify the problem statement given above for your project,
if they are needed.
4
2.2 ATM
Each bank provides its own computer to maintain its own accounts and process
transactions against them. ATMs communicate with a central computer which clears
transactions with the appropriate banks. An ATM accepts a cash card, interacts with the
user, communicates with the central system to carry out the transaction, dispenses cash,
and prints receipts. The system requires appropriate recordkeeping and security
provisions. The system must handle concurrent accesses to the same account correctly.
The banks will provide their own software for their own computers. The cost of the
shared system will be apportioned to the banks according to the number of customers
with cash cards.
The functional requirements are organized in two sections; First requirements of the
ATM and second requirements of the bank computer.
5
- transaction (withdrawal process)
You should refine above problem statement. That means, you can define your own
business purpose based on the given problem statement, and you can consider some
additional functionalities to clarify the problem statement given above for your project,
if they are needed.
6
2.3 Document Sea
Document Sea Server system stores information of the documents in each user's local
computer where Document Sea Client is installed. Whenever Document Sea Server
system receives a service request from a Document Sea Client, Document Sea Server
system should provide the corresponding service through processing information in the
Server. Document Sea Client system should provide user interfaces for executing of log
in, searching, download operations, at least.
7
- Upload documents
- Search documents
- Download documents
You should refine above problem statement. That means, you can define your own
business purpose based on the given problem statement, and you can consider some
additional functionalities to clarify the problem statement given above for your project,
if they are needed.
8
3. Evaluation Criteria
Project reports are evaluated by the following criteria (these criteria are not complete.
We can use additional criteria if needed).
We will give feedback for each phase report before your next phase project begins. You
have to consider our feedback and incorporate into your project. If you do not want to
incorporate it, you have to provide justifications about your design decisions for
teaching assistants.
You have to deliver on time. You must remember that the delay penalty will be applied
rigorously by the ratio of –15% per day. Thus, if your report is later than 7 days from
the due day, your score of the report will be even less than zero.
9
4. Report Form
1. Title Page: You should include name of the document, team name, team members
(including preferred e-mail address among team members), date and something if
you need. You should also prepare Table of Contents (including page numbers and
so on) of your document.
2. Business Purposes: describe business purposes of your project. Motivation may be
included
3. Functional requirements: major functionalities
4. Nonfunctional requirements: requirements other than functional requirements (e.g.
Quality issues, H/W & S/W requirements)
5. System Architecture: describe the architecture of project system. The architecture
shows the components of the system and the relationship of the components
6. Assumptions (optional): describe the assumptions about the project
7. Development Approach (e.g. SA/SD) & Implementation Techniques including PL to
be used
10
4.2 Software Requirement Specification
1. Title Page
You should include name of the document, team name, team members (including
preferred e-mail address among team members), date and something if you need.
You should also prepare Table of Contents (including page numbers and so on) of
your document.
2. Introduction
You should explain both technical goals and business goals. Also, you should include
the purpose of the document and potential users of this document.
3. Informational Description
Give a detailed description of the software in a structured manner, clearly showing
how and where information flows
Present a clear, easy to comprehend description of the information FLOW,
CONTENT, and STRUCTURE. Contains the following:
(1) A data dictionary (2) Data Flow Diagrams
4. Activity Specification
For each bubble (activity, process) in your lowest level DFD’s, name and describe
the basic function of the corresponding process. Use a separate page for each.
5. Preliminary User Manual
Identify who the user of the manual should be (State assumptions about the reader).
Give the reader a good idea of the human interface. Show expected menus,
command lines, interaction screens, report formats. Discuss types of input and
output. Describe the overall functional capabilities of the system.
6. Validation Criteria
Describe how the user or evaluator can determine whether the end product actually
performs the way it is described. This is best done as a check list.
It gives a way to determine whether the project has been completed and you have
delivered what was promised. What tests should be performed to verify that it
functions as described earlier (especially in section 3 above)? (Unless you have a
complete understanding of the requirements of the software, this section is hard to
write. Later, if specifications change, this section will have to be updated.)
7. Nonfunctional Requirements
State all the important non-functional requirements. You may make reasonable
assumptions about the scope of your project.
You can refer to Appendix for the detail about nonfunctional requirements.
11
8. Summary
Some readers will study all the details presented. Some may review only the main
points which you summarize here for the overall picture.
9. Acknowledgement
Include authors of this document, by section, and editor of document.
10. Appendix (optional)
You could discuss here possible enhancements to the project. Also more detail of a
more elaborate system that might be proposed as a large future upgrade (‘beyond
scope of this course’).
12
4.3 Software Design Description
13
Input assertion: state assumptions on input arguments (optional)
Output assertion: state assumptions on output arguments (optional)
Variables: list all the variables which are not part of input, output arguments
Author: who is responsible for the completion and the correct functioning of t
his module?
Remarks: state additional comments if any
Special Note:
A document must stand on its own as a unit.
All assumptions made should be stated explicitly.
Expect that the document will be reviewed by personnel who have not been
involved with the details of planning and decision making.
14
4.4 Implementation Report
1. Install
A. System requirements (hardware, software (OS, DB), network, etc.)
B. Install procedures
2. User manual
A. Describe available functions and how to use them
3. Screen shots of major functions
A. Show the real screen shots of major functions
4. Changed parts from the design
A. You have to implement the systems that conform to the design. When parts in
the design are changed in implementation phase, you have to explain why the
parts are changed
5. Software
A. Source codes (softcopy, not print), executable files (.exe)
15
Appendix: Nonfunctional Requirements
Documentation
What sorts of documentation are required?
What audience is to be addressed by each document?
Hardware Considerations
What hardware is the proposed system to be used on?
What are the characteristics of the target hardware, including memory size
and auxiliary storage space?
Performance Characteristics
Are there any speed, throughput, or response time constraints on the
system?
Are there size of capacity constraints on the data to be processed by the
system?
System Interfacing
Is input coming from systems outside the proposed system?
Is output to go to systems outside the proposed system?
Are there restrictions on the format or medium that must be used for input
or output?
16
Quality Issues
What are the requirements for reliability?
Must the system trap faults?
Is there a maximum acceptable time for restarting the system after a
failure?
What is the acceptable system downtime per 24-hour period?
Is it important that the system be portable ( able to move to different
hardware or operating system environments) ?
System Modifications
What parts of the system are likely candidates for later modification?
What sorts of modifications are expected?
Physical Environment
Where is the target equipment to operate?
Will the target equipment be in one or several locations?
Will the environmental conditions in any way be out of the ordinary ( for
example, unusual temperatures, vibrations, magnetic influences, and so on)?
Security Issues
Must access to any data or the system itself be controlled?
How often will the system be backed up?
Who will be responsible for back up?
Is physical security an issue?
17