Question

In: Computer Science

Subject: Software, Architecture Design and Testing You are to determine the user requirements for a web...

Subject: Software, Architecture Design and Testing

You are to determine the user requirements for a web phone-mail product. The primary purpose of this product is to give phone-mail users (e.g., faculty and staff) the ability to access the functionality of the phone-mail system from a web page. In general, the product should enable users of the phone-mail system to do their usual phone-mail activities via a web page.

  1. Evaluate these requirements. Do your requirements satisfy the eight criteria: Understandable, Verifiable, Independent of implementation, Consistent, Complete, Unambiguous, Realistic, Necessary? Explain your answers. Weed out any requirements that you do not think are good user requirements.
  1. Prioritize the requirements as to whether they are (1) absolutely necessary, (2) desirable, or (3) optional.

Solutions

Expert Solution

1. Requirements. Because the web phone mail system is to provide the basic functionality of the existing system, it should probably include most of the following:

  • Users will be able to review the set of messages in their mailbox
  • Access to the user's mailbox will be password protected

The messages that are new messages will be identified.

• Users can delete and save messages in the mailbox

• Users can forward a message to another user.

• Users can listen to a message Some additional capabilities like the following are plausible. These are probably of lower priority.

• Date and time and message length will be shown for each message in the mailbox

• Users can pause, fast forward, rewind, and stop the messages that are playing.

• Users can reply to a message if they have a microphone attached and they are on campus.

• Users can change their password.

• Users can change their answering message (if they have a mike and are on campus). Some of the nonfunctional requirements might include:

• (Performance) Response time should be interactive (< 6 seconds delay to play a message) if users are on campus.

• (Security) Communication should be secure (e.g. with encryption)

• (Reliability) e.g. single user failures will not crash the entire system

• (Maintainability) - Design will include provisions for periodic software updates

• (Security) - Unattended sessions will require re-login

• (Usability) - Users will be able to access the mailbox in <5 mouse clicks

• (Usability) - Users can obtain context-sensitive help from any panel

• (Usability) - Users will be able to undo any destructive action

• (Browser) - System will work on Internet Explorer 5+ and Netscape 4+

• (Platform) - System will work with Windows 2000, Windows XP, Mac OS X

• (Performance) - System will provide interactive playback on 500Mhz Pentium II or better systems

2. Requirement evaluation.

All the above requirements satisfy the 8 criteria: Understandable, Verifiable, and Independent of implementation, Consistent, Complete, Unambiguous, Realistic, and Necessary.

3. Prioritization. The first six functional requirements are high priority. All of the above non-functional requirements are of high priority; none of them are optional.

4. Risks: There is a significant risk that the programmers will not be able to produce the product in time, especially if they are not experienced. Other likely risks include the likelihood that the customer will change the requirements, or that some of the staff will leave, or that the funding will be cut.

5. System requirements of users being able to review their mailbox contents.

5.System requirements: Review mailbox contents. When user requests "view mailbox" the mailbox contents will be transparently encrypted and transmitted to client browser.

• A locking mechanism will guarantee that only one user session can update the mailbox at one time.

• All user accessible fields of the phone-mail database will be displayed and selectable in an html form

• Users will select action to perform by mouse click.

• After action is selected, user input will be validated for correctness before converting to a proposed database update.

• User display will be updated displaying proposed changes before allowing more user input actions.

• Database updates will be finalized when user logs out.


Related Solutions

Subject: Software, Architecture Design and Testing You are to determine the user requirements for a web...
Subject: Software, Architecture Design and Testing You are to determine the user requirements for a web phone-mail product. The primary purpose of this product is to give phone-mail users (e.g., faculty and staff) the ability to access the functionality of the phone-mail system from a web page. In general, the product should enable users of the phone-mail system to do their usual phone-mail activities via a web page. Evaluate these requirements. Do your requirements satisfy the eight criteria: Understandable, Verifiable,...
The stages of the classical waterfall model for software development consist of requirements, design, implementation, testing,...
The stages of the classical waterfall model for software development consist of requirements, design, implementation, testing, deployment, and maintenance. Why does picturing the development of software to run on mobile applications, business-based systems, or Internet environments help to ensure the success of the development effort? What might happen otherwise? What is the professionalism with respect to software engineering? What do you do, as a software engineer involved in a software systems development project, to ensure that the product is better...
What is software architecture? Why do we need it? Distinguish between architecture and design.
What is software architecture? Why do we need it? Distinguish between architecture and design.
Software testing is performed to check whether the developed software met the specified requirements and to...
Software testing is performed to check whether the developed software met the specified requirements and to identify any defects in the software being developed. Discuss the concept of unit testing, regression testing and release testing in software engineering.
The systems requirements in a software project includes the categories of primary requirements, derived requirements, design...
The systems requirements in a software project includes the categories of primary requirements, derived requirements, design constraints, and design goals. Briefly explain each category and how it is different from the other categories.
Data Network Design & Evaluation 1. User Requirements: Name three user requirements and explain them briefly....
Data Network Design & Evaluation 1. User Requirements: Name three user requirements and explain them briefly. 2. Application Requirements: Describe the different types of applications based on their performance requirements.
Why it can be a better idea to design the system/software architecture during or before the...
Why it can be a better idea to design the system/software architecture during or before the completion of the requirement specification? Explain.
Why it can be a better idea to design the system/software architecture during or before the...
Why it can be a better idea to design the system/software architecture during or before the completion of the requirement specification? Explain.
The first step in writing a software application is to determine the requirements. There is no...
The first step in writing a software application is to determine the requirements. There is no value in writing a program that does not address the needs of the client. Requirements can be gathered in many ways, but ultimately, the requirements serve to document what the application should and should not do. After the requirements are written, the application design can be prepared, followed by the actual coding. For this project, you will gain some practice in the design phase...
Part 1: Software Testing (6 marks): Assume that you are building a web-based grocery shopping system...
Part 1: Software Testing : Assume that you are building a web-based grocery shopping system (similar to the ones that Woolworths and Coles provide). The system allows customers to add grocery items to a (virtual) shopping cart and pay online. They will then be notified when the order is ready for pick-up in the selected store. 1. Identify one functional and one non-functional requirement related to that system . 2. Describe how you would test those two requirements . 3....
ADVERTISEMENT
ADVERTISEMENT
ADVERTISEMENT