The following is a revision history table for the Dog E-DayCare system's Software Test Cases document.
Date |
Configuration ID |
Version |
Description |
Author(s) |
---|---|---|---|---|
Software testing is a critical quality assurance step in the software development process. Testing of the Dog E-DayCare system is undertaken to identify errors in the product before delivery to the client. Thorough testing ensures the product will meet user requirements, minimizing costs in the long run, bolstering client satisfaction, and promoting repeat business.
The purpose of this document is to provide the Test Plan for the Dog E-DayCare system. The Test Plan details the testing strategy, metrics, artifacts, schedule, procedures, and test cases. Two sets of sample test cases have been developed: class test cases and integration test cases. Class test cases focus on classes and their operations within a specific sub-system . Integration test cases take a larger view of the product, uncovering errors that could occur as sub-systems interact.
Dog E-DayCare connects dog owners to dog-care service providers, providing a Web-based national forum to locate, purchase, and monitor pet-care services. The mission of the Dog E-DayCare project team is to fill a gap in the current market for online pet-care resources. For dog owners, finding a service that meets their immediate needs can be challenging and for dog-care service providers, there is a vibrant market to be reached. Dog E-DayCare envisions bringing together dog owners and service providers nationally to support this challenge.
While there are several online directories of pet-care services, there are few E-businesses offering a service locator as well as the ability to purchase and monitor pet-care services online.
The Dog E-DayCare system will be released in two phases. In the first phase, it will allow dog owners to search for services within a radius of their choice, and based on their specific needs, whether they are looking for ongoing in-home daycare, daycare outside the home, or an afternoon walk and grooming. Once a dog owner selects a service, the Dog E-DayCare system will allow them to submit all required information, schedule, and pay for service.
Dog-care service providers who have registered with Dog E-DayCare will have access to the system through two different forums: client software on their workstations and/or the Web. The system will notify service providers of potential clients, allowing them to communicate with dog owners, and access submitted information. Service providers will be able to coordinate scheduling of multiple clients, e-mail clients, and bill clients .
Phase II of the Dog E-DayCare system will introduce a range of additional tools to facilitate communication between the Customer and Service Provider. Discussion forums, chat rooms, and instant messaging will greatly enhance Customer-Service Provider relations. In addition, with selected Service Providers, Customers will be able to view their dogs online and receive an update of their dog's status. Dog E-DayCare users will also be able to access dog-care "tips of the day."
Dog E-DayCare also envisions partnering with community service organizations. For example, matching puppy raisers to puppies for Guiding Eyes for the Blind, or potential dog owners to rescued dogs on behalf of Lab Rescue. Community service is the foundation on which Dog E-DayCare is built.
As identified in the Software Requirements Specification, the most obvious limitation in this project is the experience of the project team. This is our first attempt at going through the entire software development life cycle and presenting a product that satisfies requirements in a timely and efficient manner.
Thorough testing is particularly imperative in this context.
The Test Plan provides an incremental and iterative process of testing from small to large. The Dog E-DayCare system has been designed using an object-oriented approach. Its smallest components are the classes that encapsulate the responsibilities and attributes associated with the system's various functions. Sets of related classes have been organized into sub-systems. The testing process first examines the classes within sub-systems through class testing, and then examines the interactions among sub-systems through integration testing. Integration testing is followed by validation testing and system testing, which are not addressed in this plan.
The overall system description, the test strategy, testing resources and output, and the test schedule are detailed below.
The Dog E-DayCare system is composed of seven sub-systems. Each sub-system has an associated interface and represents a set of related responsibilities. The sub-systems comprise the following:
The Application Controller sub-system provides a " core " for the entire application. The controller acts as a "grand central station" for each and every process that takes place within the scope of the application. The User Management sub-system provides a central location for handling each and every piece of user data. The Resource Management sub-system provides the application with its overall scheduling capabilities. The Order sub-system has responsibility for supporting the ordering of products and services from Service Providers by Dog E-DayCare clients . The Accounting sub-system is responsible for processing the financial transactions. The Customer Relationship Management sub-system provides the application with the ability to provide an opportunity for interaction between the customers and service care providers. [2] Finally, the Persistence Sub-system is responsible for the storage, retrieval, and update of data.
The following System Collaboration Diagram (see Figure E1) demonstrates the collaboration or "hand-shaking" that takes place throughout the major sub-systems within the application. The Application Controller is the core of the system ” each sub-system generates a request and a corresponding response. The Application Controller must handle both the request and the response. It receives the request, processes a response, and returns the response to the calling function. This can also cross over into other layers of the system. For example, if the Accounting sub-system request requires information from the Ordering sub-system to accomplish its tasks , the Application Controller mediates between these sub-systems to formulate a response and provide it to the requester.
Figure E1: Collaborations between Major Sub-Systems
3.1.1 System Collaboration Diagram
Figure E1 depicts the collaborations that exist between the major Dog E-DayCare sub-systems.
In the object-oriented context, no operation can be tested in isolation. This poses a challenge to testers. The overall objective of testing is to uncover errors. The strategy for testing the Dog E-DayCare system entails first thoroughly testing the classes within sub-systems through Class Testing, and then testing interactions among sub-systems through scenario-based Integration Testing.
A set of test cases is developed for each testing method. Test cases for both Class and Integration Testing must exercise the requirements of the system. For the purpose of this Test Plan, a sample of tests has been developed and provided in Appendices E1 and E2.
Further details on Class Testing and Integration Testing in general are provided in Section 4: Testing Procedures, below.
3.3.1 Staffing
The project team developing the Dog E-DayCare system consists of four members as detailed in the table below. Testing is a joint activity in which all team members participate. This activity is led by the Documentation Specialist.
Team Members:
3.3.2 Tools
The hardware used for testing the Dog E-DayCare system will include:
The software required for testing will include the stubs and drivers developed to support class testing.
It is envisioned that both Class Testing and Integration Testing will be carried out through several iterations, until all errors are corrected. For each iteration, Class Testing will involve recording the following metrics:
Integration Testing will involve recording a similar set of metrics for each iteration; however, the level of analysis will be the scenario. In other words:
The artifacts of testing that will be provided to the client include:
Class Testing will be undertaken as each set of sub-systems is completed. The following provides general information on how testing will be scheduled:
A detailed project schedule is provided in Appendix E3.
[1] This feature set will be available in Phase II.
[2] This feature set will be available in Phase II.
Per the Project Schedule, class testing will take place as pairs of sub-systems have been completed. Test cases for class testing must be explicitly associated with the class to be tested . Effective class testing depends on well- articulated test cases. The test cases detail the:
Per the Project Schedule, Integration Testing will take place once all sub-systems have been developed and tested. Test cases are scenario based, reflecting what users need to do with the Dog E-DayCare system. Similar to the test cases above, the integration test cases detail the:
Sample Class and Integration Test Cases are provided in Appendices E1 and E2, respectively.
Class tests are developed for each sub-system of the Dog E-DayCare TM system. A sample of class test cases follows .
The Application Controller sub-system provides a " core " for the entire application. The controller acts as a "grand central station" for each and every process that takes place within the scope of the application.
5.1.1 Test Case: ApplicationController:ApplicationController CI: DD.0001.TEST001
5.1.1.1 Description
This test case tests to see if the user functions invoked by the Application user interface are handled correctly. This interface is invoked by the other sub-systems when actions are performed and requests are made from their respective user interfaces. This particular test focuses on the user who is attempting to search for a service care provider within their area.
5.1.1.2 Required Stubs/Drivers
The SearchUI will be invoked, which is part of the presentation layer.
5.1.1.3 Test Steps
5.1.1.4 Expected Results
Test Success
The application controller sub-system successfully handles the routing of the information so that the query data goes from the presentation layer to the application controller layer, to the persistence layer, and ultimately is used to query the database. Success will be measured by the accuracy of the information (results) that is returned as a result of the query string.
Test Failure
5.1.2 Test Case: ApplicationController:ApplicationController CI: DD.0001.TEST002
5.1.2.1 Description
This test case tests to see if the user functions invoked by the Application user interface are handled correctly. This interface is invoked by the other sub-systems when actions are performed and requests are made from their respective user interfaces. This particular test will verify that the user is able to view the Tip of the Day when the Tip of the Day button is pressed.
5.1.2.2 Required Stubs/Drivers
The CommunicationUI from the Customer Relationship Management module will be used heavily in conjunction with the communication class within that same sub-system.
5.1.2.3 Test Steps
5.1.2.4 Expected Results
Test Success
The success of the test must be measured based on the Application Controller sub-system's ability to use the system data to determine the date and use that as the query string to invoke the persistence sub-system that will use the query string against the database. The test passes if the Tip of the Day is returned with the correct Tip of the Day for today's date.
Test Failure
5.1.3 Test Case: ApplicationController:ApplicationController CI: DD.0001.TEST003
5.1.3.1 Description
This test case tests to see if the user functions invoked by the Application user interface are handled correctly. This interface is invoked by the other sub-systems when actions are performed and requests are made from their respective user interfaces. This specific test will determine if the user's account balance is updated after a payment is made.
5.1.3.2 Required Stubs/Drivers
5.1.3.3 Test Steps
5.1.3.4 Expected Results
Test Success
The success of this test can be measured by the user's new balance reflecting the recent payment on his account balance. Performing a query against the database to determine if the account balance is correct will test this. The ApplicationController is tested because it is its responsibility to ensure that the correct route is followed to ultimately commit the transaction and return a successful message.
Test Failure
Test Case: ApplicationController:ApplicationController CI: DD.0001.TEST004
5.1.4.1 Description
This test case tests to see if the user functions invoked by the Application user interface are handled correctly. This interface is invoked by the other sub-systems when actions are performed and requests are made from their respective user interfaces. This particular test will ensure that the service care provider can successfully update their scheduling information.
5.1.4.2 Required Stubs/Drivers
The Resource Management sub-system will be invoked, with particular attention to the resource class, which is used for scheduling.
5.1.4.3 Test Steps
5.1.4.4 Expected Results
Test Success
The success of this test can be determined by a query performed against the database, which is invoked when the user attempts to search for that particular service. The application controller will be tested because it is its responsibility to accept the query string and commit the transaction to the database via the Persistence sub-system.
Test Failure
The User Management sub-system provides a central location for handling each and every piece of user data. This is very important in the parsing of the system.
5.2.1 Test Case: Security Manager :: addUser(In User : User) CI: DD.0001.TEST005
5.2.1.1 Description
The purpose of the test is to determine whether the Security Manager class is carrying out its responsibilities as expected. Security Manager is a critical class of the User Management sub-system, adding and removing users and their roles and authenticating users. This test will focus specifically on adding a user to the system.
5.2.1.2 Required Stubs/Drivers
Driver: IUserInterfaceDriver (smaller version of IUserInterface class)
Stubs: UserStub (smaller version of User class)
5.2.1.3 Test Steps
5.2.1.4 Expected Results
Test Success
Test Failure
5.2.2 Test Case: Security Manager :: removeUser(In User : User) CI: DD.0001.TEST006
5.2.2.1 Description
The purpose of the test is to determine whether the Security Manager class is carrying out its responsibilities as expected. Security Manager is a critical class of the User Management sub-system, adding and removing users and their roles and authenticating users. This test will focus specifically on removing a user.
5.2.2.2 Required Stubs/Drivers
Driver: IUserInterfaceDriver (smaller version of IUserInterface class)
Stubs: UserStub (smaller version of User class)
5.2.2.3 Test Steps
5.2.2.4 Expected Results Description
Test Success
Test Failure
5.2.3 Test Case: Security Manager :: authenticateUser(In User : User): Boolean CI: DD.0001.TEST007
5.2.3.1 Description
The purpose of the test is to determine whether the Security Manager class is carrying out its responsibilities as expected. Security Manager is a critical class of the User Management sub-system, adding and removing users and their roles and authenticating users. This test will focus specifically on user authentication.
5.2.3.2 Required Stubs/Drivers
Driver: IUserInterfaceDriver (smaller version of IUserInterface class)
Stubs: UserStub (smaller version of User class)
5.2.3.3 Test Steps
5.2.3.4 Expected Results
Test Success
Test Failure
5.2.4 Test Case: Customer :: getDogs() : Collection CI: DD.0001.TEST008
5.2.4.1 Description
The purpose of the test is to determine whether the Customer class is carrying out its responsibilities as expected. Customer's role in the User Management sub-system is to receive, store, and return a range of information associated with a particular Customer. This test will focus specifically on retrieving a list of all dogs belonging to a particular Customer.
5.2.4.2 Required Stubs/Drivers
Driver: IUserInterfaceDriver (smaller version of IUserInterface class)
Stubs: UserStub (smaller version of User class)
5.2.4.3 Test Steps
5.2.4.4 Expected Results
Test Success
Test Failure
5.2.5 Test Case: Customer :: getInvoices() : Collection CI: DD.0001.TEST009
5.2.5.1 Description
The purpose of the test is to determine whether the Customer class is carrying out its responsibilities as expected. Customer's role in the User Management sub-system is to receive, store, and return a range of information associated with a particular Customer. This test will focus specifically on retrieving a correct list of all invoices associated with a Customer.
5.2.5.2 Required Stubs/Drivers
Driver: IUserInterfaceDriver (smaller version of IUserInterface class)
Stubs: UserStub (smaller version of User class)
5.2.5.3 Test Steps
5.2.5.4 Expected Results
Test Success
Test Failure
5.2.6 Test Case: Service Provider :: addServiceOffering() CI: DD.0001.TEST010
5.2.6.1 Description
The purpose of the test is to determine whether the Service Provider class is carrying out its responsibilities as expected. Service Provider's role in the User Management sub-system is to receive, store, and return a range of information associated with a particular Service Provider. This test will focus specifically on adding a service offering for a specific Service Provider.
5.2.6.2 Required Stubs/Drivers
Driver: IUserInterfaceDriver (smaller version of IUserInterface class)
Stubs: ServiceProviderStub (smaller version of Service Provider class)
5.2.6.3 Test Steps
5.2.6.4 Expected Results
Test Success
Test Failure
5.2.7 Test Case: Service Provider:: getAddress() CI: DD.0001.TEST011
5.2.7.1 Description
The purpose of the test is to determine whether the Service Provider class is carrying out its responsibilities as expected. Service Provider's role in the User Management sub-system is to receive, store, and return a range of information associated with a particular Service Provider. This test will focus specifically on retrieving address information for a service provider.
5.2.7.2 Required Stubs/Drivers
Driver: IUserInterfaceDriver (smaller version of IUserInterface class)
Stubs: ServiceProviderStub (smaller version of ServiceProvider class)
5.2.7.3 Test Steps
5.2.7.4 Expected Results
Test Success
Test Failure
This Resource Management sub-system provides the application with its overall scheduling capabilities. It uses various respective classes and sub-systems to ensure that the user has up-to-date information regarding the services of interest.
5.3.1 Test Case: ResourceUI :: showCreate() CI: DD.0001.TEST012
5.3.1.1 Description
The purpose of this test case is to test the Resource Management User Interface class' (ResourceUI) showCreate() method to determine if it can display the "Register Company - resource details" screen (see SDS section 11.22) as an add screen.
5.3.1.2 Required Stubs/Drivers
Driver: IUserInterfaceDriver (smaller version of IUserInterface class)
Stubs: ResourceStub (smaller version of Resource class)
5.3.1.3 Test Steps
5.3.1.4 Expected Results
Test Success
Test Failure
5.3.2 Test Case: ResourceUI :: showEdit() CI: DD.0001.TEST013
5.3.2.1 Description
The purpose of this test case is to test the Resource Management User Interface class' (ResourceUI) showEdit() method to determine if it can display the "Register Company - resource details" screen (see SDS section 11.22) as an edit screen.
5.3.2.2 Required Stubs/Drivers
Driver: IUserInterfaceDriver (smaller version of IUserInterface class)
Stubs: ResourceStub (smaller version of Resource class)
5.3.2.3 Test Steps
5.3.2.4 Expected Results
Test Success
Test Failure
5.3.3 Test Case: ResourceUI :: showSearch() CI: DD.0001.TEST014
5.3.3.1 Description
The purpose of this test case is to test the Resource Management User Interface class's (ResourceUI) showSearch() method to determine if it can display the Resource Search screen (example not present in SDS).
5.3.3.2 Required Stubs/Drivers
Driver: IUserInterfaceDriver (smaller version of IUserInterface class)
Stubs: ServiceProviderStub (smaller version of ServiceProvider class)
5.3.3.3 Test Steps
5.3.3.4 Expected Results
Test Success
Test Failure
The Order sub-system has responsibility for supporting the ordering of products and services from Service Providers by Dog E-DayCare clients .
5.4.1 Test Case: OrderUI :: showCreate() CI: DD.0001.TEST015
5.4.1.1 Description
The purpose of this test case is to test the Order User Interface class' (OrderUI) showCreate() method to determine if it can display the "Order - initiate order" screen (see SDS section 11.10) and if the drop-down lists are populated .
5.4.1.2 Required Stubs/Drivers
Driver: IUserInterfaceDriver (smaller version of IUserInterface class)
Stubs: OrderStub (smaller version of Order class)
5.4.1.3 Test Steps
5.4.1.4 Expected Results
Test Success
Test Failure
5.4.2 Test Case: OrderUI :: showEdit() CI: DD.0001.TEST016
5.4.2.1 Description
The purpose of this test case is to test the Order User Interface class' (OrderUI) showEdit() method to determine if it can display the "Order - order details" screen (see SDS section 11.12).
5.4.2.2 Required Stubs/Drivers
Driver: IUserInterfaceDriver (smaller version of IUserInterface class)
Stubs: OrderStub (smaller version of Order class)
5.4.2.3 Test Steps
5.4.2.4 Expected Results
Test Success
Test Failure
5.4.3 Test Case: OrderUI :: showSearch() CI: DD.0001.TEST017
5.4.3.1 Description
The purpose of this test case is to test the Order User Interface class' (OrderUI) showSearch() method to determine if it can display the "Search" screen (see SDS section 11.26) and conduct a search using a stub to display the "results."
5.4.3.2 Required Stubs/Drivers
Driver: IUserInterfaceDriver (smaller version of IUserInterface class)
Stubs: SearchStub (captures Search button clicks)
5.4.3.3 Test Steps
5.4.3.4 Expected Results
Test Success
Test Failure
5.4.4 Test Case: OrderUI :: showList() CI: DD.0001.TEST018
5.4.4.1 Description
The purpose of this test case is to test the Order User Interface class' (OrderUI) showList() method to determine if it can display the "Search Results - Customer Search Results" screen (see SDS section 11.27).
5.4.4.2 Required Stubs/Drivers
Driver: IUserInterfaceDriver (smaller version of IUserInterface class)
Stubs: OrderStub (smaller version of Order class)
5.4.4.3 Test Steps
5.4.4.4 Expected Results
Test Success
Test Failure
5.4.5 Test Case: OrderLineItem CI: DD.0001.TEST019
5.4.5.1 Description
The purpose of this test case is to test the OrderLineItem class to determine if it correctly handles order- line-item related data.
5.4.5.2 Required Stubs/Drivers
Driver: OrderLineItem Test Driver: a small console application that assigns a value to the OrderLineItem and prints out the result in a console window.
Stub: N/A
5.4.5.3 Test Steps
5.4.5.4 Expected Results
Test Success
Test Failure
5.4.6 Test Case: ServiceResourceRequirement CI: DD.0001.TEST020
5.4.6.1 Description
The purpose of this test case is to test the ServiceResourceRequirement class to determine if it correctly handles the service resource requirement related data.
5.4.6.2 Required Stubs/Drivers
Driver: ServiceResourceRequirement Test Driver: a small console application that assigns a value to ServiceResourceRequirement and prints out the result in a console window.
Stubs: N/A
5.4.6.3 Test Steps
5.4.6.4 Expected Results
Test Success
Test Failure
5.4.7 Test Case: Service CI: DD.0001.TEST021
5.4.7.1 Description
The purpose of this test case is to test the Service class to determine if it correctly handles the service-related data.
5.4.7.2 Required Stubs/Drivers
Driver: Service Test Driver: a small console application that assigns a value to the order and prints out the result in a console window.
Stubs: ServiceResourceRequirement class or stub
5.4.7.3 Test Steps
5.4.7.4 Expected Results
Test Success
Test Failure
5.4.8 Test Case: Order CI: DD.0001.TEST022
5.4.8.1 Description
The purpose of this test case is to test the Order class to determine if it correctly handles the order-related data.
5.4.8.2 Required Stubs/Drivers
Driver: Order Test Driver: a small console application that assigns a value to the order and prints out the result in a console window.
Stubs: OrderLineItem class or stub
5.4.8.3 Test Steps
5.4.8.4 Expected Results
Test Success
Test Failure
The Accounting sub-system is responsible for processing the financial transactions.
5.5.1 Test Case: Accounting:InvoicePrint CI: DD.0001.TEST023
5.5.1.1 Description
The purpose of this test is to determine if the service care provider is able to print the invoices for billing.
5.5.1.2 Required Stubs/Drivers
5.5.1.3 Test Steps
5.5.1.4 Expected Results
Test Success
Test Failure
5.5.2 Test Case: Accounting:Payment CI: DD.0001.TEST024
5.5.2.1 Description
The purpose of this test is to determine if a representative of the service care provider can enter a payment receipt within the Accounting sub-system.
5.5.2.2 Required Stubs/Drivers
The Accounting sub-system will be invoked, with particular attention to the Payment class.
5.5.2.3 Test Steps
5.5.2.4 Expected Results
Test Success
Test Failure
5.5.3 Test Case: Accounting:InvoiceList CI: DD.0001.TEST025
5.5.3.1 Description
The purpose of this test is to ensure that every time a service care provider requests to view invoices, the correct invoices will be displayed.
5.5.3.2 Required Stubs/Drivers
The Application sub-system is required, with particular interest paid to the Invoice class.
5.5.3.3 Test Steps
5.5.3.4 Expected Results
Test Success
Test Failure
The Customer Relationship Management sub-system provides the application with the ability to provide an opportunity for interaction between the customers and service care providers. It also provides the system administrator with the ability to gain feedback from the customer in an effort to continually revamp the application. [3]
5.6.1 Test Case (This Feature Set Will be Available in Phase II)
The Persistence sub-system has responsibility for supporting persistent data. The purpose of this group of test cases is to determine whether the PersistenceManager class is carrying out its responsibilities as expected. PersistenceManager is a critical part of the system that handles the persistence activities of all objects. Based on the system architecture design, the Persistence Layer Java code library from http://artyomr.narod.ru has been selected to execute the majority of the persistence functionality. The Persistence Layer code library uses an XML file to store the database map and class map information. So, the correctness of the XML file in terms of correctly mapping the class structure design with the database design will essentially determine whether the objects can be correctly persisted to the database. This will be a major area of potential fault of the implementation and hence one of the major focus areas of the testing of the Persistence sub-system.
Due to limited space, the document specifies in detail the example of Customer object persistence. Please be reminded that tests in similar patterns will need to be executed for EVERY object that needs to be persisted.
5.7.1 Test Case: PersistenceManager :: loadXMLConfig() CI: DD.0001.TEST026
5.7.1.1 Description/Purpose
This test case tests the persistence manager's functionality to load the class map and the database map from the XML file. Potential errors are usually related to bad XML file entries: either file is a not valid XML file or it does not load correctly into the class map and database map.
5.7.1.2 Required Stubs/Drivers
DatabaseMap and ClassMap configuration XML file in format specified by http://artyomr.narod.ru/docs/pl/XMLConfigLoader.html
5.7.1.3 Test Steps
5.7.1.4 Expected Results
Test Success
Test Failure
5.7.2 Test Case: PersistenceManager :: saveObject() CI: DD.0001.TEST027
5.7.2.1 Description/Purpose
This test case tests the persistence manager's functionality to save an object to the database.
5.7.2.2 Required Stubs/Drivers
5.7.2.3 Test Steps
5.7.2.4 Expected Results
Test Success
Test Failure
5.7.3 Test Case: PersistenceManager :: retrieveObject() CI: DD.0001.TEST028
5.7.3.1 Description/Purpose
This test case tests the persistence manager's functionality to retrieve an object from the database.
5.7.3.2 Required Stubs/Drivers
5.7.3.3 Test Steps
5.7.3.4 Expected Results
Test Success
Test Failure
[3] This feature set will be available in Phase II.
Integration Tests are scenario based, capturing key activities that the Dog E-DayCare System TM allows the User to perform.
6.1.1 Description
Registering with the Dog E-DayCare System is the key task that allows users to take advantage of the services Dog E-DayCare has to offer. Registration requires collaboration among three sub-systems: User Management, Application Controller, and Persistence. The purpose of this test is to find errors in the interactions that must take place across these sub-systems.
6.1.2 Required Stubs/Drivers
No stubs or drivers required.
6.1.3 Test Steps
6.1.4 Expected Results
Test Success
Test Failure
6.2.1 Description
One of the key services Dog E-DayCare provides to dog-care companies is the ability to manage their resources (e.g., staff, kennels, and play areas), allocating and reallocating resources in response to, for example, staff illness , rainy weather, etc.
Reallocating resources requires collaboration among several sub-systems: User Management, Order, Resource Management, Application Controller, and Persistence. The purpose of this test is to find errors in the interactions that must take place across these sub-systems.
6.2.2 Required Stubs/Drivers
No stubs or drivers required.
6.2.3 Test Steps
6.2.4 Expected Results
Test Success
Test Failure
6.3.1 Description
The Dog E-DayCare System allows Customers to search for Service Providers based on geographic location and service desired. From the Search Results, a user can initiate an order.
Searching for a service provider and initiating an order requires collaboration among several sub-systems: User Management, Order, Application Controller, and Persistence. The purpose of this test is to find errors in the interactions that must take place across these sub-systems.
6.3.2 Required Stubs/Drivers
No stubs or drivers required.
6.3.3 Test Steps
6.3.4 Expected Results
Test Success
Test Failure
6.4.1 Description
The Dog E-DayCare System allows Customers to place an order for the service they need, from a Service Provider of their choice, and within a desired timeframe.
Placing an order requires collaboration among several sub-systems: Order, User Management, Resource Management, Application Controller, and Persistence. The purpose of this test is to find errors in the interactions that must take place across these sub-systems.
6.4.2 Required Stubs/Drivers
No stubs or drivers required.
6.4.3 Test Steps
6.4.4 Expected Results
Test Success
Test Failure
6.5.1 Description
The Dog E-DayCare System allows Customers to pay online for the dog-care services they have received.
Paying for service requires collaboration among several sub-systems: Accounting, Order, User Management, Application Controller, and Persistence. The purpose of this test is to find errors in the interactions that must take place across these sub-systems.
6.5.2 Required Stubs/Drivers
No stubs or drivers required.
6.5.3 Test Steps
6.5.4 Expected Results
Test Success
Test Failure
Figure E2 is an example of a project schedule.
Figure E2: Project Schedule
1. This feature set will be available in Phase II.
2. This feature set will be available in Phase II.
3. This feature set will be available in Phase II.
Preface