1. Trang chủ
  2. » Ngoại Ngữ

Requirements Document for the UCI Computer Store

30 5 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 30
Dung lượng 603 KB

Nội dung

Requirements Document for the UCI Computer Store Fast and Reliable Solutions Compiled by: Wai Hung Stella Khachoyan Timothy Leung Ryan Meyer Rizwaan Rauf UCI Computer Store contact: Steve Carter 1.0 INTRODUCTION .3 2.0 PROJECT PLAN .4 2.1 2.2 3.0 3.1 3.2 3.3 3.4 3.5 4.0 4.1 4.2 5.0 5.1 5.2 6.0 6.1 6.2 7.0 7.1 7.2 7.3 7.4 7.5 7.6 7.7 7.8 7.9 SCHEDULE RESOURCE TABLE .7 PROJECT RISKS TIME CONSTRAINTS SCHEDULING CONSTRAINTS REQUIREMENT CHANGES RESOURCE CONSTRAINTS KNOWLEDGE CONSTRAINTS .9 PROJECT RESOURCES .10 MEMBER STRENGTHS .10 EQUIPMENT .10 STAFF ORGANIZATION .11 TEAM STRUCTURE 11 MEMBER RESPONSIBILITIES 11 TRACKING AND CONTROL MECHANISMS 12 TRACKING MECHANISMS 12 CONTROL MECHANISMS 12 REQUIREMENTS SPECIFICATION 13 OVERVIEW OF SYSTEM REQUIREMENTS 13 ENVIRONMENT CHARACTERISTICS 13 USE­CASE SCENARIOS .13 NON­FUNCTIONAL CONSTRAINTS 19 DOMAIN­SPECIFIC RULES .19 USER INTERFACE MODEL .20 SYSTEM ANALYSIS 21 SEMI­FORMAL DIAGRAMS ERROR! BOOKMARK NOT DEFINED DATABASE: TABLES AND FIELDS 21 8.0 LIFECYCLE CONSIDERATIONS .24 9.0 ACCEPTANCE REQUIREMENTS 25 10.0 GLOSSARY .26 11.0 MEETING MINUTES 27 Page 2 of 30 11.1 WEEK 1: 27 11.2 WEEK 2: 28 Page 3 of 30 1.0 Introduction The UCI Computer Store is a campus owned facet of the UCI bookstore that sells  hardware and software to students and other UCI departments.  On the software side they  currently sell software from vendors such as Microsoft, Apple, Adobe and many others.  The  software that is sold includes off the shelf software as well as software licenses.  Hardware wise  they sell such name brands as HP, Epson, Dell, Apple and others.  In addition to selling products, the UCI Computer Store also repairs PC’s and Macintosh’s. The last important branch of the  UCI computer Store’s business is their internal processing of special orders It is obvious that with the large volume of business that flows through the campus  computer store, there needs to be a way to track who has purchased what, and what inventory  they have.  The business aspect they have asked us to analyze, and implement, is the tracking of  software licenses and special orders.  Implementing this system will be composed of two major  projects, namely a new license and special order database, and a reporting system that allows the  store to track trends and gather other useful information.  So first let’s look at what composes a  software license and why it is important to track them A software license is essentially permission to use a piece of software from the vendor.   Licenses also have a quantity associated with them, so for instance a customer can buy a license  that allows them to install a piece of software on five machines.  Departments of the university  might purchase a license for 50 computers so that they can install a given piece of software on  every machine.  In addition to a quantity, a software license has a duration, meaning that it is  only valid for a certain period of time.  This means that the computer store needs to handle  notifications letting the customer know when their license has expired With so many departments in the university and with so many licenses to choose from,  tracking licenses and keeping accurate data about them is a significant challenge.  Currently the  client tracks their inventory and transactions in a FileMaker database.  Because we do not want  to introduce any new challenges or systems that they are not familiar with, we will also be  producing our system in FileMaker.  This includes the database project as well as the reporting  aspect.   A special order is a unique request by a customer or a department for an item that is not  in stock.  Currently the computer store has access to over 200,000 items, but not all of them are  in the store.  Special orders require the store to order an item from a vendor, and then to re­sell  that item to the customer.   The first phase of the project, the database aspect, will be done inside of their current  system, but we will be making additions to it.  New fields and new processes will be put in place  so that our system can integrate smoothly into theirs.  In short, there are two major phases to this project that involve implementing a new  database that tracks software licenses as well as special orders, and a reporting system that  includes several new reports that will be added to their existing system.  The database project  will require new forms and processes and the reporting side will require new reports and scripts  to be written.  All in all the final product should integrate seamlessly into their current system,  and should empower them to use their information in new and productive ways Page 4 of 30 2.0 Project Plan 2.1 Schedule Number Start Date End date 04­10­02 04­15­02 04­15­02 04­22­02 04­15­02 04­19­02 04­19­02 04­19­02 04­22­02 04­19­02 04­21­02 04­22­02 04­23­02 04­22­02 04­23­02 04­28­02 10 11 04­22­02 04­27­02 04­29­02 04­29­02 04­29­02 05­03­02 12 13 05­02­02 05­05­02 05­26­02 05­10­02 14 15 05­27­02 05­27­02 05­27­02 05­28­02 16 17 18 19 05­15­02 05­15­02 05­16­02 05­18­02 06­01­02 05­16­02 05­26­02 06­01­02 20 21 06­01­02 06­02­02 06­02­02 06­09­02 Task Requirements Begin Web Page Meet with the client in order to get more information  about the project Work on the Requirements Draft Familiarize ourselves with FileMaker Pro 5.5  Turn in the Requirements Draft to Client for revision and  signature Refine the Requirements Drafts (Version 1) Prepare for presentation on the Requirements Work on finalizing the Requirements (Final) Test Plan Work on Test Plan (Version 1) Prepare Test Plan presentation Test Plan (Final) Design Work on Design (Version 1) Show information flow from one database to another  using diagrams Prepare Design presentation Finalize Design (Final) Implementation Implementation (Version 1) Create additional fields needed for reporting and layouts Build tables and reports drafts according to client needs Write scripts needed for automation of information  display Prepare for Implementation presentation Implementation (Final) Page 5 of 30 Task Network (see project plan document for task descriptions) Task No Duration 4/10-4/15 4/16-4/21 4/22-4/27 4/28-5/3 5/4-5/9 5/10-5/15 5/16-5/21 5/22-5/27 5/28-6/2 6/3-end Requirements 4/10/2002 to 4/15/2002 4/15/2002 to 4/22/2002 4/15/2002 to 4/19/2002 4/19/2002 to 4/22/2002 4/19/2002 to 4/19/2002 4/21/2002 to 4/22/2002 4/22/2002 to 4/23/2002 4/23/2002 to 4/28/2002 Test Plan 4/22/2002 to 4/29/2002 10 4/27/2002 to 4/29/2002 11 4/29/2002 to 5/3/2002 Design 12 5/2/2002 to 5/26/2002 13 5/5/2002 to 5/10/2002 14 5/27/2002 to 5/27/2002 15 5/27/2002 to 5/28/2002 Implementation 16 5/15/2002 to 6/1/2002 17 5/15/2002 to 5/16/2002 18 5/16/2002 to 5/26/2002 19 5/18/2002 to 6/1/2002 20 6/1/2002 to 6/2/2002 21 6/2/2002 to 6/9/2002 Page 6 of 30 2.2 Resource Table Phase Task No Assigned to Phase Manager Ryan Rizwaan Wai Requirements Tim Tim Stella Ryan Rizwaan Wai Test Plan Tim Wai 10 Stella 11 Ryan 12 Rizwaan Design 13 Wai Ryan 14 Tim 15 Stella 16 Ryan 17 Rizwaan Implementation 18 Wai Rizwaan 19 Tim 20 Stella 21 Rizwaan Demo 22 Stella Stella Page 7 of 30 3.0 Project Risks 3.1 Time Constraints  Since we only have 8 weeks to complete the project, we may not be able to deliver the  software on time.    As long as we stick to the schedule this is not that likely to occur.    By making a good schedule and sticking to it.    We have managers in place for each phase to monitor our progress 3.2 Scheduling Constraints  Since we all have classes or work, it is hard to compromise a schedule to work together.   Since this is a team group, all teammates have to understand all tasks clearly and if we  can’t meet together at the same time there is the chance that some information could not  be communicated to all the members.    We know that this risk will occur, but we plan to limit it as much as possible.    To avoid this conflict, our managers will keep in constant contact with the group  members so that scheduling conflicts are a non­issue.    Each manager will keep this in mind as we move through each of the phases, so this  responsibility will mostly fall on the appropriate manager’s shoulders 3.3 Requirement Changes  The client may make changes to his requirements that would delay the punctuality of the  delivery.    There is the chance that we would have to redo the design and/or implementation phase if the client decides to make changes to the requirements document halfway through the  process.  If we were unable to fully satisfy the requirements document, that would not  meet the client’s expectations  In general we think that changes to the requirements are very likely.  However we do not  foresee him changing the specifications and requirements midway through the project  We can’t avoid changes that he initiates, but we can be as clear and precise as we can  with our initial requirements document.  Hopefully this will prevent changes occurring  late in the project Page 8 of 30  3.4 By keeping in contact with the client we can monitor any potential changes Resource Constraints  Testing the compatibility of the software on all operating systems required by the client  may be a problem due to inaccessibility of Macintosh computers  Limit the amount of time that we can spend on actually implementing and testing our  product.  If we don’t have access to both platforms, we won’t be able to test the product  on both platforms, and therefore the system would not be portable (cross­platform  compatible).    This is simply a fact of the project.    We have access to a lab of Macintosh computers, so we will exploit that as much as  possible.  If necessary, we will have to go to the client’s site and work on the machines  there.    By contacting the lab and the client we can monitor how much time we can spend at  either site and accordingly adjust our planned time for implementation and testing 3.5 Knowledge Constraints  Since most of us are not familiar with FileMaker 5.5, as a group we will need time to  understand how the program works  This will affect the timeliness of our project depending on how fast, or how slowly, we  learn FileMaker.  It is possible that the quality of the work could suffer because of our  limited experience with FileMaker  This situation is currently a reality.    We plan to familiarize ourselves with the product under the supervision of Stella over the course of a few weeks.   The manager of the implementation phase will have the closest contact to this risk.  They  will ultimately be responsible in making sure that our group is up to speed on the  workings of FileMaker 5.5 Page 9 of 30 4.0 Project Resources 4.1 Member Strengths Wai Hung: Wai is very detailed oriented.  Wai also has experience working with students as a Teacher’s Assistant.  She also has leadership skills Stella Khachoyan:  Stella has three years of experience in FileMaker, additionally currently works  with FileMaker.  Has experience writing scripts, creating reports and managing  databases.  Stella is punctual and responsible.  Additionally, Stella has  administrative and organizational skills.   Timothy Leung: Timothy is a very hard worker, he is willing to sacrifice most things in order to  complete what is required of him.  Timothy is eager to take on new tasks and  responsibilities.  Additionally, he is a fast learner, especially programming  languages.  Timothy is open to learning new things from other people.   Ryan Meyer: Ryan has a strong reporting background in Microsoft Access and Crystal reports.   He has written hundreds of reports for many companies, including The Irvine  Company where he consulted for about one year.  He has two years of experience  with Visual Basic writing mostly automation applications that print out batches of reports.  Also, Ryan has a few years of database experience mostly dealing with  MS SQL Server 7, in addition to dealing with MS Access, Btrieve, Providex and  various others.  Hea has  some Macintosh experience, but it's been several years  since I've used them exclusively Rizwaan Rauf: Rizwaan enjoys working with databases and did very well in ICS 184, which is  the database class.  He has experience with web design and has designed the  groups current web site.  He also has 6 months of experience in software  engineering working with Java, UML and drafting requirements documents.   Detailed and punctual Rizwaan brings many skills to our group 4.2 Equipment 1.1.1 Software: FileMaker 5.5 Mac OS X, Mac OS 9 Windows 98, Windows 2000 AntPOS2 (UCI Computer Store’s own database) Page 10 of 30 1.1.8 Particular Software Notification Description:  Allow the client to send email to particular software clients Pre­condition:  There exist customers in the database that bought specific software Post­condition:  An email is sent out to the customers that have purchased that software that  gives information deemed necessary by the client Priority:  Medium level Basic Course 1) Selects software clients 2) Clicks a send button to send the email 3) Email is sent Successful Alternative None Unsuccessful Alternative None of the cutomers in the set have email addresses 1.1.9 Particular Software Reporting Description: Showing customers that had purchased any particular software program sorted by  SKU, license, non­license, platform, etc Pre­condition:  There exists product information in a database Post­condition: A list of customers that is sorted by SKU, license, non­license, platform, etc is  displayed Priority:  High level Basic Course Successful Alternative 1) Click on the button titled None "Software reporting" 2) Report is displayed Page 16 of 30 Unsuccessful Alternative None 1.1.10 Purchase History Report  Description: Run reports of software, maintenance, and license purchase history Pre­condition:  None Post­condition: A list of products is generated according to desired information Priority:  This allows the client to easily see information about the product without having to  separately find each set of information Basic Course 1) The type of report is selected 2) The organization is selected 3) A list is generated 1.1.11 Successful Alternative Unsuccessful Alternative The report generates an None empty list: the user is asked to choose another department, and generate another report Transaction Description: When a license type is selected the key code, agreement, and contract number are  automatically filled in Page 17 of 30 Pre­condition:  There exists license information in another database as well as customer  information Post­condition:  Will fill out the form accordingly Priority:  High level Basic Course Successful Alternative 1) The user selects a license None type 2) Key code, agreement and contract number are filled in 1.1.12 Unsuccessful Alternative The information is not filled in: the user must ask the proggrammer Customer List Description:  Keeps a list of licenses purchased by the customer in a separate FileMaker  database Pre­condition:  The customer exists in the database Post­condition:  Customer record is generated in another database based on license purchase Priority:  High level Basic Course 1) The user enters a new license purchase Successful Alternative None Page 18 of 30 Unsuccessful Alternative None 1.1.13 Special Orders Notification Description: Would e­mail a customer when special orders are not processed within designated  time period Pre­condition:  Email list has been set and time period has been set Post­condition:  Email has been sent to buyer and the designated email addresses Priority:  Medium level Basic Course Successful Alternative 1) The user places a special The user gets an email order stating tha the special order 2) The user send the order will be delayed 3) An email is sent to the customer 1.1.14 Unsuccessful Alternative The user gets an email stating that the special order cannot be processed at all Special Order Reporting Description: Give reports on outstanding special orders not processed; ordered, but not in; in,  but not picked up; and returned to stock Page 19 of 30 Pre­condition:  None Post­condition:  A list is generated according to specification Priority:  Allows the client to have a better knowledge of which state certain special orders are  in Basic Course 1) The user selects the type of report: Outstanding Special Orders 2) A list is generated 7.4 Successful Alternative Unsuccessful Alternative There are no Outstanding None Special Orders of any kind, therefore the programs doen't anything Non­functional Constraints 1.1.15 Correctness The system is expected to behave according to functional requirements specified by the client 1.1.16 Reliability The system should be able to produce the same output with the same inputs 90% of the time.   The other 10% of unreliability would be mainly due to system or software crashes 1.1.17 User Friendliness Since most of the employees may not be very familiar to FileMaker Pro 5.5, all the user  interfaces must be simple to understand and use 1.1.18 Verifiability In order for the team to be able to test the system, it must therefore be verifiable 1.1.19 Maintainability Their own programmers at the UCI Computer Store need to be able to maintain this system 1.1.20 Repairability In order to decrease the time needed during the testing phase, an easily repairable system would  be desired Page 20 of 30 1.1.21 Portability Since this system will run on Microsoft Windows and Mac operating systems 1.1.22 Understandability In order for the other programmers to maintain it and for our team to repair it easily, the design,  code, and test cases should be understandable 7.5     Domain­Specific Rules Only UCI departments can buy licenses Customers will not view our system Updates on new products will only be available for non trivial items Uses AntPOS 7.6 User Interface Model The following user interface gives an idea of what kind of information the client database will ultimately contain.  Although, the construction of the database an its functions have not  started yet, these screen shot of the user interface shows what the client will be working with.   The client has requested several report, thus the following screen shot show how the user  may be able to view the reports.  In this example, the user has four types of reports to choose  from.  Thus, if the client clicked on either one, the database will display a report for the request Page 21 of 30 Page 22 of 30 7.7 System Analysis Special Order File Special Order  Information Completed  Form Data  Entry  Screen Send to Database Validate  Data Store  Data License  Information Email  Notification Report  Selected Report  Option s License File Expired  Licenses Send to List Run  Query Run  Report  Script Process  Script Get  Data  Script  or  Query Send  Data Display Information Special Order File Special Order Information Completed Form Data  Maintenance Send to Database Validate  Data Page 23 of 30 Store  Data License Information License File 7.8 Database: tables and fields 1.1.23 Comprehension list of fields to be created: Field Name License Expiration License Type License Number Media Maintenance Type Customer First Name Customer Last Name Customer Type Maintenance Expiration Date Maintenance Day Purchased Customer Email Email Subject SKU Platform Date Purchased Product Name Keycode Contract Version 1.1.24     Field Type Date Text Text (potentially number is alpha numeric) Text (limited to CD, Floppy, etc.) – pick list Text – pick list Text Text Text – pick list Date Date Text Text Text (potentially number is alpha numeric) Text (limited to MAC, PC) – pick list Date Text – pick list Text Text Text Screens/tables that contain various fields: License Purchase Layout License Expiration License Type License Number Media Customer First Name Customer Last Name Customer Type Customer Email Email Subject SKU Page 24 of 30 Platform Date Purchased Product Name Version Keycode Contract Maintenance Layout License Type License Number SKU Platform Maintenance Expiration Date Maintenance Day Purchased Maintenance Type Product Name Keycode Contract License Entry Layout License Type License Number Media SKU Platform Product Name Keycode Version Page 25 of 30 8.0 Lifecycle Considerations We will be using the waterfall model because the class structure follows this method closely.   Additionally, as a group, we are not very familiar with AntPOS; it would not be feasible to create a prototype of our additions to the system.  Thus, rapid prototyping lifecycle is excluded.  Due to time constraints, we are unable to follow the incremental lifecycle or the spiral lifecycle.  It  would require us to implement this system’s multiple phases many times.  With these  constrictions, the waterfall would allow us to first know the specific requirements of the final  system before we begin as well as minimizing the time for the design and implementation.   Therefore the waterfall lifecycle is most suited for the UCI Computer Store’s requirements Page 26 of 30 9.0 Acceptance Requirements  The program will automatically e­mail customers when their maintenance is close to  expiration  It program will automatically e­mail customers when a program they purchased matches  that of a newly released version  The program will offer an e-mail notification layout for e-mailing customers that purchase a particular software program  The program will display a report showing customers who purchased any particular  software program sorted by SKU, license, non­license, platform, etc  Run a report showing software purchase history by department, date, SKU, product name, license, non-license, etc  Run a report showing maintenance purchase history by department, date, SKU, product  name, and expiration, matching specific license that have been purchased  Run a report showing customers that have purchased software licenses based on a  specific license agreement number, keycode, contract, and other specific license  identification information  Would autofill software keycodes in transaction.fp5 database serial number field, when applicable, for licenses sold  Would automatically note applicable agreement and contract numbers in transaction.fp5 database layout  Would not allow the selling of specific licenses to non-departmental customers or transactions  Would keep a running list of license purchases by customer in a separate FileMaker database with expiration dates, where applicable  Generate reports on outstanding special orders not processed, not in, or not picked up, and returned to stock Page 27 of 30 10.0 Glossary Adobe – A company that creates programs that allow the creation, publication, and  delivery of content in a variety of media AntPOS2 – A database created solely for the UCI Computer Store Apple – A company started by Steve Jobs that develops many different programs within  the Mac operating system database – A collection of information, or data, that you can organize, update, sort, search through, and print as needed E­mail – electronic mail FileMaker – A database management tool HP(Hewlett­Packard) – A company that manufactures computers as well as printers Macintosh – an operating system for Apple computers Microsoft – A company started by Bill Gates that develops many different programs and  operating systems including Windows 98, Windows NT, Windows 2000,  Windows XP, Office suite, etc PC – personal computers scripts – one or more instructions(script steps) that one defines to automate repetitive or  difficult tasks SKU(stock keeping unit) – a number associated with a product for inventory purposes Windows – an operating system created by Microsoft Page 28 of 30 11.0 Meeting Minutes 11.1 Week 1: Date Time Members Topics Wai Hung Stella Khachoyan 1) Exchanged info Tuesday 10am Timothy Leung 2) Get ICS 193 keycode April 9, 2002 11am Ryan Meyer apps Rizwaan Rauf 1) Came up with team Wai Hung name Stella Khachoyan Wednesday 12:30 2) Described skills Timothy Leung April 10, 2002 1pm 3) Meet with client within Ryan Meyer the week Rizwaan Rauf 4) Team got keycode 1) Met with the client Wai Hung 2) Intro to the database Stella Khachoyan 3) Client will supply us Friday 8am Timothy Leung with detailed desires by April 12, 2002 9:30 am Ryan Meyer Monday Rizwaan Rauf 4) Schedule for next week Page 29 of 30 Decisions 1) Wai will setup schedules according to everyone's availability 2) Turn in apps on Wed 1) Stella will be the primary contact with client 2) Rizwaan will be getting the website started 1) Need software as soon as possible 2) Need to meet times to complete requirement documents 3) Client needs to receive draft copy by Friday April 19 4) Will pick up software system on Monday April 15 11.2 Week 2: Date Time Monday 4pm April 15, 2002 8pm Wednesday 4pm April 17, 2002 9pm Thursday 9:30 April 18, 2002 11am Thursday 5pm April 18, 2002 9pm Members Wai Hung Stella Khachoyan Timothy Leung Rizwaan Rauf Topics 1) Discuss status of client contact 2) Work on portions of requirements document Decisions 1) Need to wait on client contact 2) Next meetings will be on Wed and Thurs 1) Need to wait on Wai Hung 1) Discuss status of client cleint's second section of Stella Khachoyan contact requirements Timothy Leung 2) Work on portions of 2) Decided on who would Ryan Meyer requirements document be the manager of each Rizwaan Rauf phase 1) Decided not to the second part of the project 1) Discuss status of client Wai Hung if requirements were not contact Timothy Leung given to us in time 2) Work on portions of Ryan Meyer 2) Will receive FileMaker requirements document software and appropriate databases this afternoon 1) Will try to finish requirements document tonight Wai Hung 1) Discuss second portion 2) Do part of second Stella Khachoyan of requirements portion of requirements Timothy Leung 2) Work on portions of sent by client Ryan Meyer requirements document 3) Will review the Rizwaan Rauf document tomorrow and give it to the client on Saturday, April 20 Page 30 of 30 ... system before we begin as well as minimizing? ?the? ?time? ?for? ?the? ?design and implementation.   Therefore? ?the? ?waterfall lifecycle is most suited? ?for? ?the? ?UCI? ?Computer? ?Store? ??s? ?requirements Page 26 of 30 9.0 Acceptance? ?Requirements  The? ?program will automatically e­mail customers when their maintenance is close to ... 1.0 Introduction The? ?UCI? ?Computer? ?Store? ?is a campus owned facet of? ?the? ?UCI? ?bookstore that sells  hardware and software to students and other? ?UCI? ?departments.  On? ?the? ?software side they  currently sell software from vendors such as Microsoft, Apple, Adobe and many others. ? ?The? ?... they sell such name brands as HP, Epson, Dell, Apple and others.  In addition to selling products, the? ?UCI? ?Computer? ?Store? ?also repairs PC’s and Macintosh’s.? ?The? ?last important branch of? ?the? ? UCI? ?computer? ?Store? ??s business is their internal processing of special orders

Ngày đăng: 20/10/2022, 01:32

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w