Week 2 slides - Drexel University

advertisement
INFO 324
Team Process and Product
Week 2
Dr. Jennifer Booker
College of Information Science and
Technology
Drexel University
Copyright by Gregory W.
Hislop
1
www.ischool.drexel.edu
Introduction
Agenda
• SRS discussion – OPOW1
Copyright by Gregory W.
Hislop
2
www.ischool.drexel.edu
OPOW – Original Request
Your client has emailed this request:
“I am working on a digital library project. See ensemble.org. As part
of this project, we want to make collections of course materials visible
on the Ensemble portal. To do that we need to harvest metadata
describing each course material in a collection. To do that we are
using OAI-PMH, a protocol for harvesting metadata. See
http://www.openarchives.org/.
We need a program that can reformat a file of metadata to match the
OAI-PMH protocol. The input would be a text file with metadata
extracted from one or more repositories of course materials.
Can you help?”
Copyright by Gregory W.
Hislop
3
www.ischool.drexel.edu
OPOW SRS
• Activity: class discussion based on homework
assignment OPOW1
• Goals
– Practice critiquing an SRS
– Discussion of SRS strong and weak points
• Discussion starting points
– What questions would you ask about the SRS?
– What design decisions are being made?
• Should they be deferred to the design?
Copyright by Gregory W.
Hislop
4
www.ischool.drexel.edu
Agenda
• SDS and SDS-V1 template
• Activity: Design entities
• Assignment: OPOW2 – SDS
Copyright by Gregory W.
Hislop
5
www.ischool.drexel.edu
Software Design Specification
• SRS: WHAT should the system do
• SDS: HOW should the system do it
• Switch to designing in the SDS
– Don’t repeat requirement statements
– But do refer to them explicitly
• Get into the particulars of design entities
• Key question: if you sent the SDS to a
development group would they build the
system the clients wants?
Copyright by Gregory W.
Hislop
6
www.ischool.drexel.edu
SDS-V1 Template Tour
• 1 Introduction
– 1.1
– 1.2
Scope
Definitions, Acronyms, and Abbreviations
• 2 Architectural Description
• 3 Interface Description
– 3.1
– 3.2
– 3.3
User Interface
Data Interface
Programming Interface
• 4 Detailed Design
Copyright by Gregory W.
Hislop
7
www.ischool.drexel.edu
Design Entity Content
• Entity ID and Name
• Type – Be specific and consistent
• Requirement – Always and only a pointer to a
particular requirement in the SRS
• Description – varies by entity type
– Key question: Would someone else know how to
build this entity based on the description?
– Level of detail varies by project size and
designer-implementer relationship
• Need to always cover the basics rather than assume
Copyright by Gregory W.
Hislop
8
www.ischool.drexel.edu
Detailed Design Entities
• What are the common types?
• What should you specify for each type?
Copyright by Gregory W.
Hislop
9
www.ischool.drexel.edu
Sample Entity Types
• Database (overview)
– Database table
• User interface (overview)
– Screen, Web page
• Function (program code)
• File
• …. And so on
Copyright by Gregory W.
Hislop
10
www.ischool.drexel.edu
Description for a Table Entity
• Name
• Key(s)
• Name and type of each data element
Copyright by Gregory W.
Hislop
11
www.ischool.drexel.edu
Example: Table
4.14 Active Listings
Type: Database table
Requirement: Partially fulfills requirement 3.2.9
Description:
Name: Active_Listing
This table contains a row for each item available for trading. Table content
is defined in Figure 6.
Attribute
UserID
Key
PK
DatePosted
ItemID
FK
Type
Length
STRING
15
STRING
8
STRING
10
TradeValue
BOOLEAN
TradeDescription
STRING
1
300
Figure 6 – Active Listings database table
Copyright by Gregory W.
Hislop
12
www.ischool.drexel.edu
Function
•
•
•
•
Name
Parameters
Return type and meaning
Algorithm or description of processing
Copyright by Gregory W.
Hislop
13
www.ischool.drexel.edu
Example: Function
4.3 Trim Trailing Characters
Type: Function
Requirement: Fulfills requirement 3.2.6
Description
Name: trimright
Parameters: target – a pointer to a string to be trimmed
guide – a pointer to a set of the characters to trim from target
Return: An integer representing the length of target after trimming
Use: int trimright(char *target, char *guide)
Processing: Scan target from right to left and truncate characters until
encountering a character in target that is not in guide. Calculate the new
length of target and return that value.
Example:
target = “ab/cd///”
guide = “/”
trimright( *target, *guide) returns 5 and leaves target = “ab/cd”
Copyright by Gregory W.
Hislop
14
www.ischool.drexel.edu
Screen
• Name
• Layout - at least a rough drawing
• Definition of data that appears on the
screen
– Tie to internal data element names
• Interaction description
– Behavior when a user interacts with the
screen
Copyright by Gregory W.
Hislop
15
www.ischool.drexel.edu
Example: Screen
18 – Main Menu
Type: Screen
Requirement: Partially fulfills requirement 25.
Description: This is the first screen that the Hero will see upon
opening PokerAid and it provides access to each of the PokerAid
features.
The screen will contain a column of buttons with a brief description of
each. The screen will be overlaid on the PokerAid standard screen
template.
Start/Stop
Toggle to begin or end processing of poker data
Configure
Access configuration options
Exit
Copyright by Gregory W.
Hislop
Exit PokerAid
16
www.ischool.drexel.edu
Activity: Design Entities
• List design entities for Sandy’s Castle
– Name and type
• Create a full design for several of these
entities
– For interface entities, include: system name,
screen name, user instructions, navigation
options (not just ok/continue but also cancel,
exit, maybe reset or main menu nav options)
Copyright by Gregory W.
Hislop
17
www.ischool.drexel.edu
Assignment: OPOW2
• Review a partial OPOW SDS
– Note questions for the designer - What
questions would you need to ask the designer
to be able to implement OPOW from this
SDS?
– Are all entities clear and complete?
• Define entities for the user interface
• Define entities for an alternative user
interface design
Copyright by Gregory W.
Hislop
18
www.ischool.drexel.edu
In Your Future...
• Next Class
– Design discussion – based on OPOW2
– New mini-project
Copyright by Gregory W.
Hislop
19
www.ischool.drexel.edu
Download