Title: Software Development Steps for CSE116
1Software Development Steps for CSE116
2Steps in Software Development
- Problem Statement (Project handout)
- Requirements (See Ch. 5 of UML book)
- Use Case (See Ch. 6 of UML book)
- Conceptual Model (See Ch.9, 10 of UML book)
- Implementation (Code use your Java knowledge
and Mains text) - Testing (Individual classes/units and the
integrated application)
3Requirements
- Requirements are description of needs or desires
for a product. - Primary goal of the requirements phase is to
identify what is really needed, in the form that
clearly to the client and to the development
team. - Challenge is to define the requirements such that
there is no surprises when the product is
delivered. - Artifacts Overview statement (5.3), Customers
(5.4), Goals (5.5), System functions (5.6),
System attributes (5.7)
4On to analysis
- Overview statement
- The purpose of this project is to create a
wireless device (emulator) for fast-food
ordering. - Customers
- McBurger Queen Inc., a fast food chain.
- Goals
- Allow users to order from anywhere.
- Avoid long lines at the drive through counter.
- Enable fast service for the customers.
5Analysis (contd.)
- System Functions This are a list of what the
system is supposed to do. Functional requirements
of the form - The system should do ltXgt
- System function categories
- Evident (should perform)
- Hidden (should perform)
- Frill (optional)
6Functional Requirements
Ref Function
Category R1.1 Provide interface for
customer to place order
evident R1.2 Add each
item ordered to a list hidden R1.3
Display price for current item
evident R1.4 Display total price
evident R1.5 Record sales
out of scope R1.6
Provide persistent storage out
of scope
Basic Functions are listed above. You may add on
others. Payment related functions will be
considered in the next Project.
7System Attributes
- System attributes are non-functional qualities of
the system such as response time, ease of use,
cost, platforms etc.
8System Attributes
Attributes Details, Boundary
constraints Response time Reasonable
(specify numbers) Interface metaphor
Graphical, color Fault tolerance
Graceful degradation of services Platform
Solaris 2.8
For a large project you may want to relate this
to the functional requirement table as shown in
page 46.
9Use Cases
- Use case is a narrative document that describes
the sequence of events of an actor using a system
to complete a process.
10Use Case example
Use Case Order items Actors
Customer, order taker(cashier/food
preparer) Description A customer arrives at a
WD116, looks at
display/interface, selects items
one by one, confirms choice, may cancel
current item. Confirms complete order.
Order is delivered to
customer. Items ordered include
burger, drinks of different
sizes, and side order. Money
transaction is out of scope for this project.
11Conceptual Model
- A conceptual model is a representation of the
concepts in a problem domain. - It may show
- Concepts
- Association between concepts
- Attributes of the concepts
12WD116 Conceptual Model version1.0
Item
MenuDisplay
Order
Side
Burger
Drink
PriceChart