vesmark srs 1

63
Vesmark and Carnegie Mellon University Vesmark Phone 412.429.8270 PO Box 16366 Fax 412.429.8670 Pittsburgh, PA 15242 Masters of Software Engineering Phone 412.268.6493 Carnegie Mellon University Fax 412.268.5576 5000 Forbes Avenue Pittsburgh, PA 15213-3890 Vesmark Smartware™ Software Requirements Specification Software use cases, features, and requirements for the Vesmark Smartware™ system

Upload: ruchi-patel

Post on 18-Apr-2015

35 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Vesmark SRS 1

Vesmark and Carnegie Mellon University

Vesmark Phone 412.429.8270PO Box 16366 Fax 412.429.8670Pittsburgh, PA 15242

Masters of Software Engineering Phone 412.268.6493Carnegie Mellon University Fax 412.268.55765000 Forbes AvenuePittsburgh, PA 15213-3890

Vesmark Smartware™ Software Requirements Specification

Software use cases, features, and requirements for the Vesmark Smartware™ system

Page 2: Vesmark SRS 1

Copyright © 2002 Vesmark and CMU Vesmark Smartware™ SRS Version 1.2–12/13/02

Page 3: Vesmark SRS 1

i

Revision History

Date Version Description Author(s)

11/18/02 1.0 Initial version Justin Rockwood

11/20/02 1.1 Compilation of team’s use cases Team Matrix

Justin Rockwood (compiler)

12/13/02 1.2 Sections 2, 4-11 Shailendra Mishra

Use case compilation (UC-DE-300s) Steve Gordon

Aliyassoun Djibrila

Justin Rockwood (compiler)

To have the version number and date correctly reflected in the document footers, go to “File / Properties / Custom,” change the values of “Version” and “Version Date” by entering the new values and clicking “Modify.” If you want to change the copyright information, it is stored in the same place under “Copyright.”

Also, on the same dialog screen, click the “Summary” tab and change the “Title” and “Subject” fields.

Copyright © 2002 Vesmark and CMU Vesmark Smartware™ SRS Version 1.2–12/13/02

Page 4: Vesmark SRS 1

Table of Contents 3

Tasks Remaining

The following table attempts to keep this document correct and current by showing what tasks remain. The table also has the added by product of keeping a history of the tasks.

As of Date

As of Version

Suggested By

Completed In Version

Completed By

Description

12/13/02 1.2 Justin Rockwood

Fill in the answers to questions in the use cases from the meeting minutes.

Copyright © 2002 Vesmark and CMU Vesmark Smartware™ SRS Version 1.2–12/13/02

Page 5: Vesmark SRS 1

Table of Contents v

Table of Contents

1 Introduction................................................................................................................................ 1

1.1 Purpose..................................................................................................................... 1

1.2 Scope........................................................................................................................ 1

1.3 References................................................................................................................1

2 Use Case Model Summary........................................................................................................1

3 Actor Summary.......................................................................................................................... 4

4 Requirements............................................................................................................................ 5

4.1 Functional Requirements...........................................................................................5

4.2 Nonfunctional Requirements.....................................................................................6

5 Online User Documentation and Help System Requirements......................................................7

6 Design Constraints.................................................................................................................... 7

7 Purchased Components............................................................................................................7

8 Interfaces.................................................................................................................................. 7

8.1 User Interfaces..........................................................................................................7

8.2 Hardware Interfaces..................................................................................................7

8.3 Software Interfaces....................................................................................................8

8.4 Communications Interfaces.......................................................................................8

9 Licensing Requirements.............................................................................................................8

10 Legal, Copyright, and Other Notices...........................................................................................8

11 Applicable Standards.................................................................................................................9

11.1 Financial Standards...................................................................................................9

11.2 Communications Standards.......................................................................................9

11.3 Platform Compliance Standards................................................................................9

11.4 Data Standards..........................................................................................................9

11.5 Vesmark Imposed Standards....................................................................................9

Copyright © 2002 Vesmark and CMU Vesmark Smartware™ SRS Version 1.2–12/13/02

Page 6: Vesmark SRS 1

vi

Appendix A Introduction..................................................................................................................11

Use Case Naming Convention...............................................................................................11

UC-DE-0s – Generic Data Entry Use Cases....................................................................................12

Use Case Hierarchy...............................................................................................................12

UC-DE-1 – Enter Generic Information....................................................................................12

UC-DE-45 – Import Information..............................................................................................16

UC-DE-60 – Validate Information...........................................................................................17

UC-DE-100s – Demographic Information Use Cases......................................................................18

Demographic Information Overview.......................................................................................18

UC-DE-100 – Enter Personal Information...............................................................................19

UC-DE-110 – Enter Spouse Information................................................................................21

UC-DE-120 – Enter Children Information...............................................................................22

UC-DE-130 – Enter Address Information................................................................................23

UC-DE-150 – Enter Risk Tolerance........................................................................................24

UC-DE-160 – Enter Simulation Mode.....................................................................................25

UC-DE-161 – Retrieve Current Inflation Rate.........................................................................26

UC-DE-200s – Income and Tax Information Use Cases..................................................................27

UC-DE-210 – Enter Gross Income Information......................................................................27

UC-DE-220 – Enter Spouse Gross Income Information.........................................................28

UC-DE-230 – Enter Asset Information....................................................................................29

UC-DE-240 – Enter Liability Information.................................................................................30

UC-DE-250 – Enter Federal Tax information..........................................................................31

UC-DE-260 – Enter FICA Tax Information..............................................................................32

UC-DE-270 – Enter State Tax Information.............................................................................33

UC-DE-280 – Enter Local Tax Information.............................................................................33

UC-DE-300s – Cost of Living Information Use Cases......................................................................34

UC-DE-300 – Enter Generic Cost of Living Information.........................................................34

UC-DE-310 – Enter Food and Beverages Expenses Information...........................................35

UC-DE-320 – Enter Housing Expenses Information...............................................................36

UC-DE-330 – Enter Apparel and Upkeep Expenses Information...........................................37

UC-DE-340 – Enter Transportation Expenses Information.....................................................38

Copyright © 2002 Vesmark and CMU Vesmark Smartware™ SRS Version 1.2–12/13/02

Page 7: Vesmark SRS 1

Table of Contents vii

UC-DE-350 – Enter Medical Care Expenses Information.......................................................39

UC-DE-360 – Enter Recreation Expenses Information...........................................................40

UC-DE-370 – Enter Education and Communication Expenses Information...........................41

UC-DE-380 – Enter Other Goods and Services Expenses Information..................................42

Copyright © 2002 Vesmark and CMU Vesmark Smartware™ SRS Version 1.2–12/13/02

Page 8: Vesmark SRS 1

Tables and Diagrams

Tables

Table 1 – Use Case Model Summary.............................................................................................4

Table 2 – Actor Summary...............................................................................................................4

Table 3 – Use Case Entity Naming Conventions..........................................................................11

UML Diagrams

UML Diagram 1 – Use Case Actors................................................................................................5

UML Diagram 2 – Use Case Hierarchy.........................................................................................12

UML Diagram 3 – UC-DE-1 Enter Generic Information Use Case Diagram.................................14

UML Diagram 4 – UC-DE-1 Enter Generic Information Activity Diagram......................................15

UML Diagram 5 – Personal and Demographic Information Use Cases Overview........................19

Page 9: Vesmark SRS 1

1

Section

SRS Document1

Software Requirements SpecificationSoftware use cases, features, and requirements for the Vesmark Smartware™ system

1 Introduction

1.1 Purpose

The purpose of this SRS is to fully describe the external behavior of the Vesmark Smartware™ application, as well as nonfunctional requirements, design constraints, and other factors necessary to provide a complete, comprehensive description of the software requirements.

1.2 Scope

This will be the first prototype version of the Vesmark Smartware™ system, which will include enough functionality to be marketed to potential licensees, but will not be feature complete. A list of high-level features the system will provide is discussed in section 4.

1.3 References

Following is a list of project-related references or applicable documents that bear on this project.

[Vision] Team Matrix, Vesmark Smartware ™ Vision Document , 2002.

[Book] Vesmark, Inc., Manage Your Own Financial Future! 1996.

[Demo] ——————, Demo CD, 2002.

1.4 Use Case Model Summary

This section provides an overview of the use case model. The survey is used by people interested in the behavior of the system, such as the customer, users, architects, use case authors, designers, use case designers, testers, managers, reviewers, and writers.

Use Case Name Description Actor(s)

UC-DE-1 Enter Generic Information

Allows the user to enter any generic type of information that needs to be entered into the system.

User

Page 10: Vesmark SRS 1

2

Use Case Name Description Actor(s)

UC-DE-45 Import Information

Allows the system to import financial data from external data sources specified by the user.

System

UC-DE-60 Validate Information

Any data entered by the user needs to be validated against the predefined business rules. This use case performs all the validations before the changes are saved.

System

UC-DE-100 Enter Personal Information

Allows the user to enter his personal data such as date of birth, sex, etc.

User

UC-DE-110 Enter Spouse Information

Allows the user to enter his spouse’s personal data.

User

UC-DE-120 Enter Children Information

Allows the user to enter data about his children.

User

UC-DE-130 Enter Address Information

Allows the user to enter data about his current address. In addition, the user could optionally enter data about other addresses.

User

UC-DE-150 Enter Risk Tolerance

Allows the user to enter the risk level that he can tolerate.

Professional

UC-DE-160 Enter Simulation Mode

Allows the user to enter one of the seven inflationary/deflationary modes that he wants the system to simulate.

Novice

UC-DE-161 Retrieve Current Inflation Rate

The system uses this use case to fetch the nation’s updated rate of inflation from some external data source.

System

UC-DE-210 Enter Gross Income Information

Allows the user to enter his gross income, i.e., before tax income.

User

UC-DE-220 Enter Spouse Gross Income Information

Allows the user to enter the gross income for his wife. This use case can be invoked only if the user specifies that he is married in the use case UC-DE-100

UC-DE-230 Enter Asset Information

Allows the user to enter his various financial assets in terms of US dollars.

User

UC-DE-240 Enter Liability Information

Allows the user to enter his various financial liabilities in terms of US dollars

User

UC-DE-250 Enter Federal Tax Information

Allows the user to enter the total amount of federal tax paid in previous financial years.

User

UC-DE-260 Enter FICA Tax Information

Allows the user to enter the total amount of Medicare and SSN tax paid during previous financial years.

User

Page 11: Vesmark SRS 1

Software Requirements Specification 3

Use Case Name Description Actor(s)

UC-DE-270 Enter State Tax Information

Allows the user to enter the total amount of state tax paid during previous financial years.

User

UC-DE-280 Enter Local Tax Information

Allows the user to enter the total amount of local tax paid during previous financial years.

User

UC-DE-300 Enter Generic Cost of Living Information

Allows the user to enter generic information pertaining to cost of living expenses.

User

UC-DE-310 Enter Food and Beverages Expenses Information

Allows the user to enter the amount spent on food and beverages.

User

UC-DE-320 Enter Housing Expenses Information

Allows the user to enter the amount spent on housing costs such as rent and mortgage.

User

UC-DE-330 Enter Apparel and Upkeep Expenses Information

Allows the user to enter the amount spent by him on clothing, etc.

User

UC-DE-340 Enter Transportation Expenses Information

Allows the user to enter the amount spent on transportation expenses such as auto loan and car insurance.

User

UC-DE-350 Enter Medical Care Expenses Information

Allows the user to enter the total medical care expenditure incurred by him or other family members.

User

UC-DE-360 Enter Recreation Expenses Information

Allows the user to enter the amount spent on recreation activities.

User

UC-DE-370 Enter Education and Communication Expenses Information

Allows the user to enter the amount spent on things like tuition, books, telephone fees, etc.

User

UC-DE-308 Enter Other Goods and Services Expenses Information

Allows the user to enter the amount spent on miscellaneous items that are not covered by other use cases.

User

UC-GL-100 Goal Report Generates the status report for the various goals entered by the user.

System

UC-GL-304 Education Goal Modification

Allows the user to modify the education goals previously entered by the user.

User

UC-RP-200 Balance Sheet Report

Generates a balance sheet report for the user based on all the financial information entered by the user into the system.

System

Table 1 – Use Case Model Summary

Page 12: Vesmark SRS 1

4 Software Requirements Specification

2 Actor Summary

All of the actors mentioned in the use case model summary are reported here. Table 1 delineates and describes the actors that interact with the system. UML Diagram 1 depicts a visual representation of the actors described in the summary.

Actor Name Description

User There are two main types of users: novice users and professionals. Sometimes, however, this distinction is not relevant, so a generic user is useful for abstracting away the details.

Novice A novice user is one who is either new to the system or new to personal financial management. It should be noted, however, that a user might be both a novice and a professional at the same time. For example, a person might know quite a bit about finances, but very little about the Vesmark Smartware™ system.

Professional A professional user is proficient in both the Smartware™ system and is knowledgeable about personal finance. Some sections of the software will be specifically tailored to each type of user.

System At times, the system may interact with itself; hence, the system is also an actor.

Table 2 – Actor Summary

UML Diagram 1 – Use Case Actors

3 Requirements

Iterative, use-case driven requirements engineering methods were used for requirements elicitation. The high-level requirements were obtained during the first iteration. In the

Page 13: Vesmark SRS 1

Software Requirements Specification 5

following iterations each of these high level requirements were narrowed down to specific low-level system requirements. These low-level requirements were documented as use cases, presented in Appendix A.

3.1 Functional Requirements

The system will have UI screens allowing the user to enter his demographic information.

The demographic information can be grouped into the following categories and each of these categories will have a separate UI for data entry:

o Personal Information

o Spouse Information

o Children Information

o Address Information

o Risk Tolerance

The system will allow users to enter the simulation mode and select one of the seven predefined inflation/deflation modes.

The system will always work with the current Inflation rate as applicable in the country. In order to achieve this, the system will have to try to fetch the current inflation rate from external pre-designated data sources on a periodic basis.

The system will have UI screens through which the user can enter his gross income (before-tax income).

The system will have UI screen allowing the user to enter his tax related information, categorized as follows

o Federal tax

o FICA tax

o State Tax

o Local Tax

For each of the above-mentioned taxes, there may be separate UI screens.

The system will have UI screens for entering information about cost of living expenses.

The system will allow the user to categorize his expenses as follows:

o Food and Beverages

o Housing

o Apparel and Upkeep

o Transportation

o Medical care

o Recreation

o Education and Communication

o Other Goods and Services

Page 14: Vesmark SRS 1

6 Software Requirements Specification

Each of the above categories may have separate UI screens. The user will have the option of either entering each of the expenses in detail or he can enter the total for each of the categories.

The system will allow the user to enter his short term and long-term goals. The data entry will be ‘Just-in-Time,’ meaning that if some information is not available, the system invokes the appropriate UI screens allowing the user to enter that data.

The system must implement Vesmark’s patented “Five Step Model,” which allows the system to analyze the financial data entered by the user and produce financial reports such as:

o Balance Sheet Report

o Five Year Projection Report

o Goal Status Report

3.2 Nonfunctional Requirements

Usability

The system has to be user friendly and appealing in nature. However, no specific quantified data about screen layouts is currently available.

Reliability

The system must implement the patented Five Step model, ensuring that the system does calculations and generates reports exactly as mentioned in the patent.

Performance

Performance is the response time, utilization, and throughput behavior of the system. This attribute may not be as important as initially thought. The “efficiency” aspect of the usability quality attribute should be sufficient for the needs of this software. Because this software is interactive with the user, it need only be as fast as the user and not provide any lag time.

Supportability

Currently, the level of supportability has not been specified. However, since Vesmarkintends to license Smartware to other financial institutions, it is essential for Smartware to have clearly defined, published interfaces, allowing those financial institutions to support Smartware in the future.

Security

The level of security provided in this system has not been quantified. However, the system will communicate with other software systems over the Internet, and therefore, it is an important consideration. Additionally, it is important to consider the security of the data stored on the local computer.

Page 15: Vesmark SRS 1

Software Requirements Specification 7

4 Online User Documentation and Help System Requirements

Online help can give users instant assistance in using the program as well as advice on topics for which they want additional information. The nature of the online help system is unique to application development, as it combines aspects of programming, such as hyperlinks, with aspects of technical writing, such as organization and presentation. The development of an online help system is a project within this project and will benefit from up-front scope management and planning activities. More details will be specified in a separate SRS for the help system. However, the software must definitely support an easy to use and immediately available help system, especially in the educational mode.

5 Design Constraints

There are no specific design constraints for Smartware as of now.

6 Purchased Components

No third party components have been purchased specifically for Smartware. However, as development of the product begins, it may become necessary to purchase third party development tools or components. As specified in the Statement of Work (SOW), any additional development costs will be incurred by either Carnegie Mellon University or Vesmark, as jointly decided by both parties before the cost is incurred.

7 Interfaces

7.1 User Interfaces

Smartware must have a user interface that makes it appealing and easy to use. Currently, Team Matrix has developed a whiteboard prototype that has served as a visual paradigm for the team requirements gathering process. Team Matrix also intends to utilize the Human Computer Interface (HCI) expertise available at CMU during the spring and summer 2003 semesters to refine the existing whiteboard prototype. This will ensure that the user interface is appropriate for the potential users of the system.

7.2 Hardware Interfaces

Not Applicable

7.3 Software Interfaces

Vesmark intends to license the Smartware software to financial Institutions who will make it a part of their suite of financial products. Smartware will be designed to have well defined, published interfaces that would allow these financial institutions to integrate it into their products. Smartware will have to interact with other existing systems in order to fetch financial data such as inflation rate, Consumer Price Index (CPI), etc. These interactions should be encapsulated in well-defined interfaces in order to reduce the coupling between Smartware and other financial systems.

Page 16: Vesmark SRS 1

8 Software Requirements Specification

7.4 Communications Interfaces

Smartware will interact with other software systems in real-time over the Internet. Transmission Control Protocol/Internet Protocol (TCP/IP) is the de-facto standard protocol used for communication over Internet. Hence, Smartware must be TCP/IP compliant and will be able to communicate (send and receive data packets) with the designated TCP/IP nodes on the Internet.

8 Licensing Requirements

Licensing issues are comprised of three categories. First, there is software licensing for the Vesmark product itself. Secondly, there are issues involved with third party licensees where the Vesmark product will be co-branded. Both of these issues will be driven by Vesmark and AF&A. Thirdly, there is an issue of licensing with respect to any third party software component that might be incorporated into the actual Vesmark product. To date, there are no such license requirements. However, this requirement cannot be determined until the complete Vesmark system has been defined.

9 Legal, Copyright, and Other Notices

Vesmark is a registered trademark of Vesmark Inc. Vesmark has obtained a software patent for its Five Step financial planning model. The details of this patent are listed below:

Word Mark VESMARKGoods and Services IC 009. US 021 023 026 036 038. G & S:

Computer software for use in financial and investment planning and management and user manuals distributed as a unit

Mark Drawing Code (1) TYPED DRAWINGSerial Number 76358136Filing Date January 11, 2002Filed ITU FILED AS ITUPublished for Opposition

August 13, 2002

Owner (APPLICANT) Vesmark, Inc. CORPORATION PENNSYLVANIA 103 Ramey Avenue Pittsburgh PENNSYLVANIA 15220

Attorney of Record Andrew J. CorneliusPrior Registrations 2093384Type of Mark TRADEMARKRegister PRINCIPALLive/Dead Indicator LIVE

Page 17: Vesmark SRS 1

Software Requirements Specification 9

10 Applicable Standards

10.1 Financial Standards

There may be applicable financial standards, i.e. FASB (Financial Accounting Standards Board), to which the Vesmark Smartware™ system must comply. These are not known at this time and must be determined before design of the system can start.

10.2 Communications Standards

Communications standards include TCP/IP for accessing the Internet.

10.3 Platform Compliance Standards

The software must run on the Windows platform, including Windows 98, Windows Me (Millennium Edition), Windows 2000, and Windows XP. Support for earlier versions of Windows has not yet been determined

10.4 Data Standards

The OFX format is the main standard used for importing financial data from popular accounting software packages. OFX is a customized XML format. There is also a format that TurboTax and other tax preparation software tools use, which is not known at this time.

10.5 Vesmark Imposed Standards

Vesmark has a patented 5-step process. The developed system has to implement the financial planning process as defined in the patent.

Appendix Use Case SpecificationsA

Use Case SpecificationsContains complete details of the system use cases

Appendix A Introduction

This appendix contains the complete details of all of the system use cases for the Vesmark Smartware™ software requirements specification.

Use Case Naming Convention

The use case names follow the following convention:

Page 18: Vesmark SRS 1

10 Software Requirements Specification

Two-letter prefix describing the entity’s type, which is always UC for use case, followed by a dash.

Two-letter prefix describing the functional scope of the entity, followed by a dash. The functional scopes are described below.

Prefix Entity

DE Data Entry

IN Installation

GL Goals

RP Reports

Table 3 – Use Case Entity Naming Conventions

A sequential number, which may be split into ranges to aggregate logical groupings within the functional scope. Oftentimes, this logical grouping is simply a way of avoiding numbering conflicts when the work is split up among the team.

For example, the label UC-DE-100 defines the first data entry use case specification within the 100’s logical group.

Each use case has a specification and may have accompanying UML diagrams if they provide any additional information or clarification.

UC-DE-0s – Generic Data Entry Use Cases

Use Case Hierarchy

Since many of the use cases share common traits, several “global” use cases have been defined which allow a clearer and more concise prose when reading and writing specific use cases. A diagram depicting the hierarchy of the use cases is shown in UML Diagram 2.

Page 19: Vesmark SRS 1

Software Requirements Specification 11

UML Diagram 2 – Use Case Hierarchy

UC-DE-1 – Enter Generic Information

Specification

Use Case ID: UC-DE-1 Use Case Name: Enter Generic Information

Description: The user enters some information (unspecified in this use case), some or all of which is required and the rest is optional. This is a generic use case for any type of information that needs to be entered into the system.

Preconditions: None

Post conditions: All of the required information and any of the optional information is stored in the system, OR the system does not change any information if the user cancels the use case.

Frequency of Use: High

Normal Course of Events:

1. User explicitly initiates the use case through the user interface.

– OR –

System initiates the use case in response to a calculation, report, or other internal action, which requires the information.

2. (UC-DE-20) System loads previously stored information.

3. (UC-DE-30) System displays existing information to the user.

4. [Entry] (Extension Point – Use cases that derive from this one will specify what information)

(UC-DE-40) User manually enters information.

– AND/OR –

(UC-DE-45) User instructs system to import information from an

Page 20: Vesmark SRS 1

12 Software Requirements Specification

Use Case ID: UC-DE-1 Use Case Name: Enter Generic Information

external data source.

5. (UC-DE-50) User instructs system to save information.

6. (UC-DE-60) System validates the information.

7. (UC-DE-70) System stores the information.

Alternative Courses:

5a. (UC-DE-80) User instructs system to preview information (viewing changes without committing them yet).

6a. Cycle back to step 4 (User wants to change more information).

– OR –

Continue the normal flow of events at step 5.

5b. (UC-DE-90) User instructs System to cancel.

6b. System leaves previously stored information unaltered.

Exceptions: None

Extends: None

Includes: UC-DE-20 – Load Information

UC-DE-30 – Display Information

UC-DE-40 – Manually Enter Information

UC-DE-45 – Import Information

UC-DE-50 – Request to Save Information

UC-DE-60 – Validate Information

UC-DE-70 – Store Information

UC-DE-80 – Preview Information

UC-DE-90 – Cancel Changes to Information

Associated Requirements:

None

Example: Joe selects a goal that requires the number and age of each of his children. The system brings up a screen displaying information that he had previously entered for his first child. He enters the name and age of each of his other children, instructs the system to save the information, and continues to his next task.

Questions: None

Page 21: Vesmark SRS 1

Software Requirements Specification 13

UC-DE-1 – UML Use Case Diagram

UML Diagram 3 – UC-DE-1 Enter Generic Information Use Case Diagram

Page 22: Vesmark SRS 1

14 Software Requirements Specification

UC-DE-1 – UML Activity Diagram

UML Diagram 4 – UC-DE-1 Enter Generic Information Activity Diagram

Page 23: Vesmark SRS 1

Software Requirements Specification 15

UC-DE-45 – Import Information

Specification

Use Case ID: UC-DE-45 Use Case Name: Import Information

Description: This use case is invoked whenever the user specifies an external data source to input any information.

Preconditions: Some other use case that needs some information is started by either the system or the user.

Post conditions: The specified financial data is stored in the system, or the system does not change any information if the user cancels the use case.

Frequency of Use: High

Normal Course of Events:

1. User specifies the external data source and the data item to be imported.

Alternative Courses:

None

Extends: None

Exceptions: The specified external source is not available. The system notifies the user. User can either retry or return back to the calling use case.

Includes: None

Associated Requirements:

None

Example: Based on Fred’s request from another use case, this use case is initiated and the appropriate information is imported from a 3rd party program. The user selects from a standard list of import compatible formats and the user is also asked to select the name of the file from which to import. The system then imports the data and returns to the use case that called it.

Page 24: Vesmark SRS 1

16 Software Requirements Specification

Use Case ID: UC-DE-45 Use Case Name: Import Information

Questions: Handling Multiple Field Importing.

Since the system handles just-in-time data entry, how should we handle importing when possibly only one field is requested? Importing only one field at a time is not efficient. How do we want to handle this?

Proposed Solution:

A suggestion to solve this is to create an “importing clipboard” that allows importing of information from various external programs. This clipboard would save all relevant information in the background and not commit it to actual data fields.

If duplicate values (from multiple import sites) exist, the “clipboard” would allow multiple values. As each field is required by the system, the imported values would be displayed to the user and he could select the appropriate value for the requesting field.

Randy Winters

Do we want to allow just importing by file name, or do we want to be more intelligent and allow a user to specify, “Get assets from Quicken” and have the program find and extract all necessary information?

Randy Winters

UC-DE-60 – Validate Information

Specification

Use Case ID: UC-DE-60 Use Case Name: Validate Information

Description: This use case performs various data validation activities, which may be part of the business logic.

Preconditions: The user has entered information in some use case either manually or by importing data from external data source.

Post conditions: Either the use case displays messages indicating the errors in the data, or control is returned to the calling use case indicating no errors have occurred.

Frequency of Use: High

Page 25: Vesmark SRS 1

Software Requirements Specification 17

Use Case ID: UC-DE-60 Use Case Name: Validate Information

Normal Course of Events:

1. Check the data type

2. [Validate] (Extension Point). This is where derived use cases perform their custom data validation (for example, checking to make sure a number is within a certain range).

Alternative Courses:

None

Extends: None

Exceptions: Data type is invalid – Message is shown to the user.

Includes: None

Associated Requirements:

None

Example: The system validates information as called by other use case routines.

Questions: Do we need to determine all fields that need validations?

Do we also have to define the types of entry validation that are to be supported?

UC-DE-100s – Demographic Information Use Cases

Demographic Information Overview

There are basically two types of demographic information: address and personal information (such as name, birth date, etc.). The primary user has his personal information, but the same information is collected for his spouse and children. Therefore, a use case detailing the gathering of personal information is applied for the primary user and reused in a slightly modified way for the spouse and children. These relationships are shown in UML Diagram 5.

Page 26: Vesmark SRS 1

18 Software Requirements Specification

UML Diagram 5 – Personal and Demographic Information Use Cases Overview

UC-DE-100 – Enter Personal Information

Specification

Use Case ID: UC-DE-100 Use Case Name: Enter Personal Information

Description: The user enters personal information, some of which is required and the rest is optional. This is a generic use case for any type of

Page 27: Vesmark SRS 1

Software Requirements Specification 19

Use Case ID: UC-DE-100 Use Case Name: Enter Personal Information

information pertaining to the user or a family member.

Preconditions: None

Post conditions: All of the user’s required personal information and any of the optional information is stored in the system, OR the system does not change any information if the user cancels the use case.

Frequency of Use: Medium

Normal Course of Events:

See UC-DE-1 (Enter Generic Information) for the normal course of events.

4. [Entry] (Extension Point)

User manually enters or imports the following required information:

First name

Sex

Birth date

(Age will be calculated and shown but not entered)

Marital status (single or married)

Number of children

User manually enters or imports the following optional information:

Middle name

Last name

Alternative Courses:

See UC-DE-1 (Enter Generic Information) for the alternate courses of events.

Exceptions: Number of children is negative.

Extends: UC-DE-1 (Enter Generic Information)

Includes: None

Associated Requirements:

None

Example: Mary informs the system that she wants to modify her name and age. A screen appears with the information that she has previously entered. She changes the required information and instructs the system to save the information.

Questions: Should the term spouse be used or the more generic domestic partner?

Are there any other values for marital status other than single and married?

Can the user enter a birth date in the future? (Maybe a future child, future spouse of a child, etc.)

Page 28: Vesmark SRS 1

20 Software Requirements Specification

UC-DE-110 – Enter Spouse Information

Specification

Use Case ID: UC-DE-110 Use Case Name: Enter Spouse Information

Description: The user enters personal information about his spouse, some of which is required and the rest is optional.

Preconditions: User’s marital status is set to “married.”

Post conditions: All of the spouse’s required personal information and any of the optional information is stored in the system, OR the system does not change any information if the user cancels the use case.

Frequency of Use: Low

Normal Course of Events:

See UC-DE-1 (Enter Generic Information) for the normal course of events.

4. [Entry] (Extension Point)

User manually enters or imports the following required information:

First name

Sex (required, but not editable. The sex is determined from the primary user’s sex.)

Birth date

(Age will be calculated and shown but not entered)

(Number of children assumed to be the same as the primary user)

User manually enters or imports the following optional information:

Middle name

Last name

Alternative Courses:

See UC-DE-1 (Enter Generic Information) for the alternate courses of events.

Extends: UC-DE-100 (Enter Personal Information)

Exceptions: None

Includes: None

Associated Requirements:

None

Example: Mary informs the system that she wants to modify her name and age. A screen appears with the information that she has previously entered. She changes the required information and instructs the system to save the information.

Questions: Do we need to consider same sex marriages or can the system infer the sex of the spouse from the sex of the primary user? (In creating text for future dialog boxes or screens, the assumption of traditional

Page 29: Vesmark SRS 1

Software Requirements Specification 21

Use Case ID: UC-DE-110 Use Case Name: Enter Spouse Information

marriages may greatly decrease complexity.)

Can we assume that the spouse will have the same number of children as the primary user?

UC-DE-120 – Enter Children Information

Specification

Use Case ID: UC-DE-120 Use Case Name: Enter Children Information

Description: The user enters personal information about his children, some of which is required and the rest is optional.

Preconditions: User has one or more children.

Post conditions: All of the children’s required personal information and any of the optional information is stored in the system, OR the system does not change any information if the user cancels the use case.

Frequency of Use: Low

Normal Course of Events:

See UC-DE-1 (Enter Generic Information) for the normal course of events.

4. [Entry] (Extension Point)

User manually enters or imports the following required information, once for each child:

First name

Birth date

(Age will be calculated and shown but not entered)

User manually enters or imports the following optional information:

Middle name

Last name

Sex

Alternative Courses:

See UC-DE-1 (Enter Generic Information) for the alternate courses of events.

Extends: UC-DE-100 (Enter Personal Information)

Exceptions: None

Includes: None

Associated Requirements:

None

Example: Stephen wants to add a goal for college tuition for his four-year-old daughter. The system needs to know his daughter’s name and birth date so it initiates this use case. Stephen enters the required information and also enters in the information for his other two

Page 30: Vesmark SRS 1

22 Software Requirements Specification

Use Case ID: UC-DE-120 Use Case Name: Enter Children Information

children. He then instructs the system to save the information.

Questions: None

UC-DE-130 – Enter Address Information

Specification

Use Case ID: UC-DE-130 Use Case Name: Enter Address Information

Description: The user enters his primary address information, and optionally enters additional addresses.

Preconditions: None

Post conditions: All of the required address information and any of the optional information is stored in the system, OR the system does not change any information if the user cancels the use case.

Frequency of Use: Required at least once. The user can initiate this use case at any time.

Normal Course of Events:

See UC-DE-1 (Enter Generic Information) for the normal course of events.

4. [Entry] (Extension Point)

User manually enters or imports the following information for his primary address:

Address label (home, work, etc.)

Address

City

State

Zip

Phone number

5. User manually enters or imports additional addresses

Alternative Courses:

See UC-DE-1 (Enter Generic Information) for the alternate courses of events.

Extends: UC-DE-1 (Enter Generic Information)

Exceptions: Zip code is not a five or nine digit number

Phone number in not a valid US format

Includes: None

Associated Requirements:

None

Example: Katie has just moved and wants to change her address information. Through the user interface, she brings up a screen with her previous address showing. She edits the address and instructs the system to save her changes.

Questions: Should multiple addresses be supported?

Yes – but they do not necessarily have to be

Chris and Gene in

Page 31: Vesmark SRS 1

Software Requirements Specification 23

Use Case ID: UC-DE-130 Use Case Name: Enter Address Information

entered. Should support multiple addresses not just two.

meeting on 10/16/02.

Should more than just the 50 United States be supported (i.e., U.S. territories, AFOs, etc.)?

No, the 50 states and Washington D.C. are all that is required at this time.

Chris and Gene in meeting on 10/16/02.

Should phone numbers be supported, and if so, should multiple phone numbers be supported for each address?

UC-DE-150 – Enter Risk Tolerance

Specification

Use-Case ID: UC-DE-150 Use-Case Name: Enter Risk Tolerance

Description: Let user enter or modify the risk tolerance level that he can tolerate.

Preconditions: None

Post conditions: Risk tolerance level has been entered or modified, or no information is changed if the user cancels the use case

Frequency of Use: Low

Normal Course of Events:

See UC-DE-1 (Enter Generic Information) for the normal course of events.

4. [Entry] (Extension Point)

User selects one of the following risk tolerance levels:

Low risk

Medium risk

High risk

Alternative Courses:

2a. On the first time the use case is run, the system sets the risk tolerance level to the default medium risk level.

Exceptions: None

Extends: UC-DE-1 (Enter Generic Information)

Includes: None

Associated Requirements:

None

Scenario Joe wants to enter the risk tolerance level. System loads the default tolerance level for him, and Joe changes the level according to his need then applies it. He is satisfied with his selection, so instructs the system to save his entry, and continues his next task.

Questions Does the system provide suggestions for asset allocation (i.e. does the system do anything with the

Page 32: Vesmark SRS 1

24 Software Requirements Specification

Use-Case ID: UC-DE-150 Use-Case Name: Enter Risk Tolerance

risk tolerance or just store it)?

Do we need a “preview” button/option?

Is it OK that we interpret risk tolerance this way?

UC-DE-160 – Enter Simulation Mode

Specification

Use-Case ID: UC-DE-160 Use-Case Name: Enter Simulation Mode

Description: Let user enter or modify one of the seven inflationary/deflationary modes that they want the system to simulate.

Preconditions: Current inflation/deflation rate.

Post conditions: Simulation mode has been entered or modified and the specific rate has been entered or updated if user chooses not to use the current rate, or no information is changed if the user cancels the use case.

Frequency of Use: Medium

Normal Course of Events:

See UC-DE-1 (Enter Generic Information) for the normal course of events.

4. [Entry] (Extension Point)

User selects one of the inflation modes

Inflation

Normal

Deflation

User selects one of the inflation/deflation rates

Higher than normal, specifies the rate

same

lower than normal, specifies the rate

5. System stores simulation mode that user selects, and specific rate if user chooses not to use the current rate

Alternative Courses:

3c. User selects to load default value

Exceptions: None

Extends UC-DE-1 (Enter Generic Information)

Includes: UC-DE-161 (Retrieve Current Inflation Rate)

Associated Requirements:

None

Scenario: Jane wants to select a simulation mode. The system has already set the default simulation mode to inflationary and pre-filled the current inflation rate for her. She uses this default value, previews it and is satisfied with the selection. Jane then instructs the system to save and continues with her next task.

Questions Should the system calculate the user’s personal inflation

Page 33: Vesmark SRS 1

Software Requirements Specification 25

Use-Case ID: UC-DE-160 Use-Case Name: Enter Simulation Mode

rate?

Should the user be allowed to enter a specific target inflation rate?

When does the system require the user to enter the simulation mode?

Do we need a “preview” button?

Do we want to provide the option of calculating the default mode?

UC-DE-161 – Retrieve Current Inflation Rate

Specification

Use Case ID: UC-DE-161 Use Case Name: Retrieve Current Inflation Rate

Description: Retrieve the current inflation rate from an external source.

Preconditions: Not clear at this time.

Post conditions: Current inflation rate has been retrieved.

Frequency of Use: Medium

Normal Course of Events:

Not clear at this time.

Alternative Courses:

Not clear at this time.

Exceptions: Not clear at this time.

Includes: Not clear at this time.

Associated Requirements:

None

Scenario: Not clear at this time.

Questions/Notes Do we need to keep a history of inflation rates (each time we retrieve it from the external source)?

UC-DE-200s – Income and Tax Information Use Cases

UC-DE-210 – Enter Gross Income Information

Specification

Use Case ID: UC-DE-210 Use Case Name: Enter Gross Income Information

Description: The user enters information about his gross income.

Page 34: Vesmark SRS 1

26 Software Requirements Specification

Use Case ID: UC-DE-210 Use Case Name: Enter Gross Income Information

Preconditions: None

Post conditions: All of the user’s “before-tax-income” related information and any of the optional information is stored in the system, or the system does not change any information if the user cancels the use case.

Frequency of Use: Low

Normal Course of Events:

See UC-DE-1 (Enter Generic Information) for the normal course of events.

4. [Entry] (Extension Point)

The user could either enter the total gross income from all of his jobs or he could enter them separately and the system calculates the total gross income for the entire financial year.

Alternative Courses:

See UC-DE-1 (Enter Generic Information) for the alternate courses of events.

Extends: UC-DE-1 (Enter Generic Information)

Exceptions: User enters an invalid income amount (non-numeric, but could be negative).

Includes: None

Associated Requirements:

None

Example: Jim desires to enter his gross income into the system. He enters the information and then instructs the system to save the gross income. The system verifies that the information is imported correctly and if so continues with its current activity. Otherwise, he is asked to enter the information correctly.

If he is importing his gross income, he instructs the system where to find the import data; and the system retrieves the information after which he verifies that it is correct and then exits the gross input entry routine.

srgordon, 11/20/02,
We need to ensure that we get a consistent way of listing alternative courses.
Page 35: Vesmark SRS 1

Software Requirements Specification 27

Use Case ID: UC-DE-210 Use Case Name: Enter Gross Income Information

Questions: Handling Multiple Field Importing.

Since gross income is just one component of imported tax information, how should we handle importing? Importing only one field at a time is not efficient. If we are then importing multiple tax fields, how do we handle this when the user only needs the Gross income at this time?

Proposed Solution:

A suggestion to solve this is to create an “importing clipboard” that allows importing of information from various external programs. This clipboard would save all relevant information in the background and not commit it to actual data fields.

If duplicate values (from multiple import sites) exist, the “clipboard” would allow multiple values. As each field is required by the system, the imported values would be displayed to the user, who could then select the appropriate value for the requested field.

Asked by Randy Winters

Can negative income values be entered?

Asked by Justin Rockwood

UC-DE-220 – Enter Spouse Gross Income Information

Specification

Use Case ID: UC-DE-220 Use Case Name: Enter Spouse Gross Income Information

Description: The user enters information about his spouse’s gross income.

Preconditions: User’s marital status is set to “married.”

Post conditions: All of the spouse’s “before-tax-income” related information and any of the optional information is stored in the system, or the system does not change any information if the user cancels the use case.

Frequency of Use: Low

Normal Course of Events:

See UC-DE-1 (Enter Generic Information) for the normal course of events.

4. [Entry] (Extension Point)

The user could either enter the total gross income from all of his spouse’s jobs or he could enter them separately and the system calculates the total gross income for the entire financial year.

Page 36: Vesmark SRS 1

28 Software Requirements Specification

Use Case ID: UC-DE-220 Use Case Name: Enter Spouse Gross Income Information

Alternative Courses:

See UC-DE-1 (Enter Generic Information) for the alternate courses of events.

Extends: UC-DE-210 (Enter Gross Income Information)

Exceptions: User enters an invalid income amount (non-numeric, but could be negative).

Includes: None

Associated Requirements:

None

Example: Jim desires to enter the gross income information for his wife into the system. He enters the information and then instructs the system to save the gross income. The system verifies that the information is imported correctly and if so continues on with its current activity. Otherwise, he is asked to enter the information correctly.

If he is importing her gross income, he instructs the system where to find the import data is and the system retrieves the information after which he verifies that it is correct and then exits the gross income entry routine.

Questions: Should the spouse gross income information be entered separately or should the gross income field be for the couple’s income and the user must add them together? Adding the sums together seems to follow the way tax information is entered on IRS forms.

Asked by Randy Winters

How are we handling families where each spouse files separately?

Asked by Randy Winters

UC-DE-230 – Enter Asset Information

Specification

Use Case ID: UC-DE-230 Use Case Name: Enter Asset Information

Description: The user enters information about her financial assets.

Preconditions: None

Post conditions: All of the user’s required financial asset information is stored in the system, or the system does not change any information if the user cancels the use case.

Frequency of Use: High

Normal Course of Events: User manually enters or imports information related to her

financial assets. The user can either enter the value of each of

Page 37: Vesmark SRS 1

Software Requirements Specification 29

Use Case ID: UC-DE-230 Use Case Name: Enter Asset Information

the financial assets separately (such as House), or the user can enter the combined value of all the assets.

Alternative Courses:

See UC-DE-1 (Enter Generic Information) for the alternate courses of events.

Extends: UC-DE-1 (Enter Generic Information)

Exceptions: User enters an invalid amount for an asset (non-numeric or negative).

Includes: None

Associated Requirements:

None

Example: Jim desires to enter his asset information into the system. He enters each one of his assets one item at a time until he has completed entering all the information he desires.

Questions: Should we provide an intelligent input form that easily allows the user to categorize the asset information?

Asked by Randy Winters

UC-DE-240 – Enter Liability Information

Specification

Use Case ID: UC-DE-240 Use Case Name: Enter Liability Information

Description: The user enters information about her financial liabilities.

Preconditions: None

Post conditions: All of the user’s required financial liability information is stored in the system, or the system does not change any information if the user cancels the use case.

Frequency of Use: High

Normal Course of Events:

See UC-DE-1 (Enter Generic Information) for the normal course of events.

4. [Entry] (Extension Point)

User manually enters or imports information related to her financial liabilities. The user can either enter the value of each of the financial liabilities separately (such as Educational Loan), or the user can enter the combined value of all the liabilities.

Alternative Courses:

See UC-DE-1 (Enter Generic Information) for the alternate courses of events.

Extends: UC-DE-1 (Enter Generic Information)

Exceptions: User enters an invalid amount for a liability (non-numeric or negative).

Includes: None

Page 38: Vesmark SRS 1

30 Software Requirements Specification

Use Case ID: UC-DE-240 Use Case Name: Enter Liability Information

Associated Requirements:

None

Example: Jane desires to enter her liability information into the system. She enters each one of her liabilities one item at a time until she has completed entering all the information she desires.

Questions:

UC-DE-250 – Enter Federal Tax information

Specification

Use Case ID: UC-DE-250 Use Case Name: Enter Federal Tax Information

Description: The user enters the total amount of federal tax he paid in the previous financial year.

Preconditions: The user has entered his gross income for the previous financial year.

Post conditions: The total amount of federal tax paid by the user in the previous financial year is stored in the system, or the system does not change any information if the user cancels the use case.

Frequency of Use: Low

Normal Course of Events:

See UC-DE-1 (Enter Generic Information) for the normal course of events.

4. [Entry] (Extension Point)

User manually enters or imports information related to his federal taxes.

Alternative Courses:

See UC-DE-1 (Enter Generic Information) for the alternate courses of events.

Extends: UC-DE-1 (Enter Generic Information)

Exceptions: User enters an invalid amount for federal tax (non-numeric, but negative values are allowed in the case of a refund).

User enters an amount for federal tax, which is greater than the user’s gross income.

Includes: None

Associated Requirements:

None

Example: See previous UC-DE-200 level examples.

Questions:

Page 39: Vesmark SRS 1

Software Requirements Specification 31

UC-DE-260 – Enter FICA Tax Information

Specification

Use Case ID: UC-DE-260 Use Case Name: Enter FICA Tax Information

Description: The user enters the total amount of FICA tax he paid in the previous financial year.

Preconditions: The user has entered his gross income for the previous financial year.

Post conditions: The total amount of FICA tax paid by the user in the previous financial year is stored in the system, or the system does not change any information if the user cancels the use case.

Frequency of Use: Low

Normal Course of Events:

See UC-DE-1 (Enter Generic Information) for the normal course of events.

4. [Entry] (Extension Point)

User manually enters or imports information related to his FICA taxes. Either the user could enter the Social Security tax and Medicare tax separately, or the user could enter the total of the two taxes.

Alternative Courses:

See UC-DE-1 (Enter Generic Information) for the alternate courses of events.

Extends: UC-DE-1 (Enter Generic Information)

Exceptions: User enters an invalid amount for FICA tax (non-numeric, but negative values are allowed in the case of a refund).

User enters an amount for FICA tax, which is greater than the user’s gross income.

Includes: None

Associated Requirements:

None

Example: See previous UC-DE-200 level examples.

Questions:

UC-DE-270 – Enter State Tax Information

Specification

Use Case ID: UC-DE-270 Use Case Name: Enter State Tax Information

Description: The user enters the total amount of state tax he paid in the previous financial year.

Preconditions: The user has entered his gross income for the previous financial year.

Post conditions: The total amount of local state paid by the user in the previous financial year is stored in the system, or the system does not change any information if the user cancels the use case.

Page 40: Vesmark SRS 1

32 Software Requirements Specification

Use Case ID: UC-DE-270 Use Case Name: Enter State Tax Information

Frequency of Use: Low

Normal Course of Events:

See UC-DE-1 (Enter Generic Information) for the normal course of events.

4. [Entry] (Extension Point)

User manually enters or imports information related to his state taxes.

Alternative Courses:

See UC-DE-1 (Enter Generic Information) for the alternate courses of events.

Extends: UC-DE-1 (Enter Generic Information)

Exceptions: User enters an invalid amount for state tax (non-numeric, but negative values are allowed in the case of a refund).

User enters an amount for state tax, which is greater than the user’s gross income.

Includes: None

Associated Requirements:

None

Example: See previous UC-DE-200 level examples.

Questions:

UC-DE-280 – Enter Local Tax Information

Specification

Use Case ID: UC-DE-280 Use Case Name: Enter Local Tax Information

Description: The user enters the total amount of local tax he paid in the previous financial year.

Preconditions: The user has entered his gross income for the previous financial year.

Post conditions: The total amount of local tax paid by the user in the previous financial year is stored in the system, or the system does not change any information if the user cancels the use case.

Frequency of Use: Low

Normal Course of Events:

See UC-DE-1 (Enter Generic Information) for the normal course of events.

4. [Entry] (Extension Point)

User manually enters or imports information related to his local taxes.

Alternative Courses:

See UC-DE-1 (Enter Generic Information) for the alternate courses of events.

Extends: UC-DE-1 (Enter Generic Information)

Exceptions: User enters an amount for local tax, which is greater than the

Page 41: Vesmark SRS 1

Software Requirements Specification 33

Use Case ID: UC-DE-280 Use Case Name: Enter Local Tax Information

user’s gross income.

Includes: None

Associated Requirements:

None

Example: See previous UC-DE-200 level examples.

Questions:

UC-DE-300s – Cost of Living Information Use Cases

All of the 300 level use cases use the term “cost of living” to mean routine living expenses. The term is used so frequently, that it is hereafter abbreviated “COL.”

UC-DE-300 – Enter Generic Cost of Living Information

Specification

Use Case ID: UC-DE-300 Use Case Name: Enter Generic Cost of Living Information

Description: The user enters financial information about his cost of living. This is a generic use case for any type of information pertaining to cost of living information.

Preconditions: None

Post conditions: The total amount of cost of living information is stored in the system, or the system does not change any information if the user cancels the use case.

Frequency of Use: Medium

Normal Course of Events:

See UC-DE-1 (Enter Generic Information) for the normal course of events.

4. [Entry] (Extension Point)

User manually enters or imports information related to his cost of living.

Alternative Courses:

See UC-DE-1 (Enter Generic Information) for the alternate courses of events.

Extends: UC-DE-1 (Enter Generic Information)

Exceptions: User enters an invalid amount for a cost of living expese (non-numeric or negative).

Includes: None

Associated Requirements:

None

Example: None

Page 42: Vesmark SRS 1

34 Software Requirements Specification

Use Case ID: UC-DE-300 Use Case Name: Enter Generic Cost of Living Information

Questions: None

UC-DE-310 – Enter Food and Beverages Expenses Information

Specification

Use Case ID: UC-DE-310 Use Case Name: Enter Food and Beverages Expenses Information

Description: The user enters the amount spent or budgeted for food and beverages expenses.

Preconditions: None

Post conditions: The total amount for food and beverages expenses is stored in the system, or the system does not change any information if the user cancels the use case.

Frequency of Use: Low

Normal Course of Events:

See UC-DE-1 (Enter Generic Information) for the normal course of events.

4. [Entry] (Extension Point)

User manually enters or imports information related to his food and beverages expenses.

Alternative Courses:

See UC-DE-1 (Enter Generic Information) for the alternate courses of events.

Extends: UC-DE-300 (Enter Generic Cost of Living Information)

Exceptions: User enters an invalid amount for the food and beverages expense (non-numeric or negative).

Includes: None

Associated Requirements:

None

Example: None

Questions: If the user is bored with entering the details of each cost of living category, will it be possible to bypass the sub-levels and enter a total?

Asked by Steve Gordon

Justin Rockwood, 12/13/02,
I think Chris answered this question in one of the meetings. The user can enter as much detail as he wants in each cost of living category, or he can just enter totals.
Page 43: Vesmark SRS 1

Software Requirements Specification 35

UC-DE-320 – Enter Housing Expenses Information

Specification

Use Case ID: UC-DE-320 Use Case Name: Enter Housing Expenses Information

Description: The user enters the amount spent or budgeted for housing expenses.

Preconditions: None

Post conditions: The total amount for housing expenses is stored in the system, or the system does not change any information if the user cancels the use case.

Frequency of Use: Low

Normal Course of Events:

See UC-DE-1 (Enter Generic Information) for the normal course of events.

4. [Entry] (Extension Point)

User manually enters or imports the following information related to his housing expenses:

Mortgage (Rent)

Real estate taxes (if applicable)

Utilities/Household expenses

Homeowner’s/Renter’s insurance

Miscellaneous

Subtotal

5. System displays subtotal as user enters information

Alternative Courses:

See UC-DE-1 (Enter Generic Information) for the alternate courses of events.

Extends: UC-DE-300 (Enter Generic Cost of Living Information)

Exceptions: User enters an invalid amount for housing expense (non-numeric or negative).

Includes: None

Associated Requirements:

None

Example: None

Questions: Will there be an option for the user to enter the total living cost expenditure without going through all the detail?

Asked by Steve and Ali

Will the system validate as the user enters information, or only after the user chooses to save?

Are we working with any other currency?

Page 44: Vesmark SRS 1

36 Software Requirements Specification

Use Case ID: UC-DE-320 Use Case Name: Enter Housing Expenses Information

Are mortgage and rent different?

UC-DE-330 – Enter Apparel and Upkeep Expenses Information

Specification

Use Case ID: UC-DE-330 Use Case Name: Enter Apparel and Upkeep Expenses Information

Description: The user enters the amount spent or budgeted for apparel and upkeep expenses.

Preconditions: None

Post conditions: The total amount for apparel and upkeep expenses is stored in the system, or the system does not change any information if the user cancels the use case.

Frequency of Use: Low

Normal Course of Events:

See UC-DE-1 (Enter Generic Information) for the normal course of events.

4. [Entry] (Extension Point)

User manually enters or imports the following information related to his housing expenses:

Clothing

Miscellaneous

Subtotal

5. System displays subtotal as user enters information

Alternative Courses:

See UC-DE-1 (Enter Generic Information) for the alternate courses of events.

Extends: UC-DE-300 (Enter Generic Cost of Living Information)

Exceptions: User enters an invalid amount for apparel and upkeep expenses (non-numeric or negative).

Includes: None

Associated Requirements:

None

Example: None

Questions: None

Page 45: Vesmark SRS 1

Software Requirements Specification 37

UC-DE-340 – Enter Transportation Expenses Information

Specification

Use Case ID: UC-DE-340 Use Case Name: Enter Transportation Expenses Information

Description: The user enters the amount spent or budgeted for transportation expenses.

Preconditions: None

Post conditions: The total amount for transportation expenses is stored in the system, or the system does not change any information if the user cancels the use case.

Frequency of Use: Low

Normal Course of Events:

See UC-DE-1 (Enter Generic Information) for the normal course of events.

4. [Entry] (Extension Point)

User manually enters or imports the following information related to his transportation expenses:

Auto loan (fixed amount)

Car insurance

Gasoline and repairs

Public transportation

Miscellaneous

Subtotal

5. System displays subtotal as user enters information.

Alternative Courses:

See UC-DE-1 (Enter Generic Information) for the alternate courses of events.

Extends: UC-DE-300 (Enter Generic Cost of Living Information)

Exceptions: User enters an invalid amount for expenses (non-numeric or negative).

Includes: None

Associated Requirements:

None

Example: Bob selects a goal that requires transportation expense information, causing the system to show a data entry form. He enters the information or enters 0 if not applicable, instructs the system to save the information, and continues to his next task.

Questions: Should vehicle registration fees or parking expenses be included in the pre-defined list?

Asked by Steve and Ali

Page 46: Vesmark SRS 1

38 Software Requirements Specification

UC-DE-350 – Enter Medical Care Expenses Information

Specification

Use Case ID: UC-DE-350 Use Case Name: Enter Medical Care Expenses Information

Description: The user enters the amount spent or budgeted for medical care expenses.

Preconditions: None

Post conditions: The total amount for medical care expenses is stored in the system, or the system does not change any information if the user cancels the use case.

Frequency of Use: Low

Normal Course of Events:

See UC-DE-1 (Enter Generic Information) for the normal course of events.

4. [Entry] (Extension Point)

User manually enters or imports the following information related to his medical care expenses:

Medical costs

Medical insurance

Dental examinations

Eye examinations

Prescription drugs

Miscellaneous

Subtotal

5. System displays subtotal as user enters information.

Alternative Courses:

See UC-DE-1 (Enter Generic Information) for the alternate courses of events.

Extends: UC-DE-300 (Enter Generic Cost of Living Information)

Exceptions: User enters an invalid amount for expenses (non-numeric or negative).

Includes: None

Associated Requirements:

None

Example: None

Questions: None

Page 47: Vesmark SRS 1

Software Requirements Specification 39

UC-DE-360 – Enter Recreation Expenses Information

Specification

Use Case ID: UC-DE-360 Use Case Name: Enter Recreation Expenses Information

Description: The user enters the amount spent or budgeted for recreation expenses.

Preconditions: None

Post conditions: The total amount for recreation expenses is stored in the system, or the system does not change any information if the user cancels the use case.

Frequency of Use: Low

Normal Course of Events:

See UC-DE-1 (Enter Generic Information) for the normal course of events.

4. [Entry] (Extension Point)

User manually enters or imports the following information related to his recreation expenses:

Vacation

Fitness program

Video rentals

Miscellaneous

Subtotal

5. System displays subtotal as user enters information.

Alternative Courses:

See UC-DE-1 (Enter Generic Information) for the alternate courses of events.

Extends: UC-DE-300 (Enter Generic Cost of Living Information)

Exceptions: User enters an invalid amount for expenses (non-numeric or negative).

Includes: None

Associated Requirements:

None

Example: None

Questions: Are more sub categories required for recreation expenses?

Asked by Steve and Ali

Page 48: Vesmark SRS 1

40 Software Requirements Specification

UC-DE-370 – Enter Education and Communication Expenses Information

Specification

Use Case ID: UC-DE-370 Use Case Name: Enter Education and Communication Expenses Information

Description: The user enters the amount spent or budgeted for education and communication expenses.

Preconditions: None

Post conditions: The total amount for education and communication expenses is stored in the system, or the system does not change any information if the user cancels the use case.

Frequency of Use: Low

Normal Course of Events:

See UC-DE-1 (Enter Generic Information) for the normal course of events.

4. [Entry] (Extension Point)

User manually enters or imports the following information related to his education and communication expenses:

Education

Books

Telephone fees

Computer accessories

Internet fees

Miscellaneous

Subtotal

5. System displays subtotal as user enters information.

Alternative Courses:

See UC-DE-1 (Enter Generic Information) for the alternate courses of events.

Extends: UC-DE-300 (Enter Generic Cost of Living Information)

Exceptions: User enters an invalid amount for expenses (non-numeric or negative).

Includes: None

Associated Requirements:

None

Example: None

Questions: Are multiple school names supported?

Asked by Steve and Ali

Page 49: Vesmark SRS 1

Software Requirements Specification 41

UC-DE-380 – Enter Other Goods and Services Expenses Information

Specification

Use Case ID: UC-DE-380 Use Case Name: Enter Other Goods and Services Expenses Information

Description: The user enters the amount spent or budgeted for other goods and services expenses.

Preconditions: None

Post conditions: The total amount for other goods and services expenses is stored in the system, or the system does not change any information if the user cancels the use case.

Frequency of Use: Low

Normal Course of Events:

See UC-DE-1 (Enter Generic Information) for the normal course of events.

4. [Entry] (Extension Point)

User manually enters or imports the following information related to his other goods and services expenses:

Life insurance

Debt consolidation (fixed amount)

Personal care items

Miscellaneous

Subtotal

5. System displays subtotal as user enters information.

Alternative Courses:

See UC-DE-1 (Enter Generic Information) for the alternate courses of events.

Extends: UC-DE-300 (Enter Generic Cost of Living Information)

Exceptions: User enters an invalid amount for expenses (non-numeric or negative).

Includes: None

Associated Requirements:

None

Example: None

Questions: None

Page 50: Vesmark SRS 1

Glossary and Index

Glossary

5-Step Model Vesmark’s patented process for determining personal CPI and a personal savings rate.

AF&A Adam Filippo & Associates (AF&A) is a nationally known brand identity and marketing firm who is assisting in the Smartware™ system graphic design and marketing.

CMU Carnegie Mellon University

CPI The consumer price index (CPI) measures the prices of consumer goods and services and is a measure of the pace of U.S. inflation. The U.S. Department of Labor publishes the CPI every month.

FASB Financial Accounting Standards Board

HCI Human Computer Interaction (HCI). Carnegie Mellon has an HCI department within the School of Computer Science.

MSE The Masters of Software Engineering program at Carnegie Mellon University

SOW The Statement of Work (SOW) is a contract between Team Matrix(and hence Carnegie Mellon University) and Vesmark, defining deliverables, timelines, and joint responsibilities.

TCP/IP Transmission Control Protocol / Internet Protocol (TCP/IP)

TCP/IP is a suite of communications protocols that allows communication between groups of dissimilar computer systems from a variety of vendors. It is the protocol used on the Internet.

Page 51: Vesmark SRS 1

Index

Adam Filipo & Associates.........................................................................................................8, 43address information................................................................................................2, 18, 23, 24, 30children.......................................................................................................2, 13, 18, 20, 21, 22, 23demographic information..........................................................................................................5, 18expenses...........................................................................3, 5, 6, 34, 35, 36, 37, 38, 39, 40, 41, 42

cost of living........................................................................................................3, 5, 34, 35, 36transportation...............................................................................................................3, 38, 39

income..............................................................................................2, 5, 27, 28, 29, 31, 32, 33, 34Marketing.................................................................................................................................. 8, 43Smartware.......................................................................................................1, 4, 6, 7, 8, 9, 11, 43spouse........................................................................................................2, 18, 20, 21, 22, 28, 29taxes..........................................................................................2, 3, 5, 9, 27, 28, 29, 31, 32, 33, 34

FICA........................................................................................................................... vi, 3, 5, 32Team Matrix.......................................................................................................................... 1, 7, 43Vesmark.................................................................................................1, vi, 1, 4, 6, 7, 8, 9, 11, 43