Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

2023 COMP 371 Assignment # 1 Due: October. 13 (Friday), 2023, 11:59 PM Design a Library Circulation System (LCS). Design a simple Library Circulation System

2023 COMP 371 Assignment # 1 Due: October. 13 (Friday), 2023, 11:59 PM Design a Library Circulation System (LCS). Design a simple Library Circulation System (System or LCS) based on the course textbook. For this assignment, please use the course textbook Ch. 6: Use Cases - https://www.craiglarman.com/wiki/downloads/applying_uml/larman-ch6-applying-evolutionary-usecases.pdf, Ch.7 Other Requirements, Ch. 8 & 9 Elaboration and Domain Model. 1. [4 marks] Build a business case and write Use Case Models (Fully Dressed Use Case Models/p67, p73 and Use Case Diagram/p90). A RUP Business Use Case Specification can be found here: http://files.defcon.no/RUP/webtmpl/templates/bm/rup_bucs.htm. 2. [4 marks] Write a Vision document based on your business case (pp. 58, 102, 109, 111 and using the attached Template or online: http://files.defcon.no/RUP/webtmpl/templates/bm/rup_bvis.htm ). 3. [4 marks] Activity Diagram (pp. 92 and 477). 4. [3 marks] Glossary (pp. 58, 102 and 115). Some templates: a. https://www.overleaf.com/learn/latex/Glossaries b. https://www.baeldung.com/cs/latex-glossary c. http://files.defcon.no/RUP/process/templates.htm d. http://files.defcon.no/RUP/webtmpl/templates/req/rup_gloss.htm 5. [3 marks] Supplementary SW Specification (pp: 59, 102, 104, 107, 557 or using attached IEEE830SoftwareRequirementsSpecification template. Another template can be found here: http://files.defcon.no/RUP/webtmpl/templates/req/rup_sspec.htm). 6. [2 marks] Design a Domain Model (p. 134) 7. [2 bonus marks] ??? 8. [2 bonus marks] ??? Notes: For the last two items, choose two activities you think should be included in the project and explore ways to use the software to accomplish them. Project information (some information will be used in the Assignment 2): The way to understand how to model a system is to model a system under the guidance of a mentor. The mentors for this course are the models that Larman does in his textbook. The system we will be modelling is a Library Circulation System (LCS). Yes, such systems exist for most libraries, but we will model our own, not because we wish to replace existing systems but to see how to develop a system. The library you will model contains books and magazines. There may be many copies of a popular book, but there is only one subscription to each magazine and, hence, only one copy of each issue. Books are catalogued using the Library of Congress cataloguing system. (Look it up!) Magazines older than three years are removed from the library and recycled. There is only one branch of this library. It is open seven days a week, from 0900 until 1900. There are two types of library patrons. Children (aged 12 and under) are allowed to borrow up to five books or 10 magazines at a time. Children pay a fine of 10 cents for each day a book or magazine is overdue. Adults (those over the age of 12) are allowed to borrow up to 10 books or 25 magazines at a time. Adults pay a fine of $5 for each day a book or magazine is overdue. Each patron has an account number (12 digits) and an access code (four digits). The library has expansion plans for the future. This expansion will include different materials, perhaps including CDs, DVDs, USB Sticks, videotapes, audio tapes, etc. The librarians should be able to produce a list of all books on loan, a list of all magazines on loan, or a list of all items on loan. A patron should be able to list all items she has on loan. To begin the modelling process, we must identify the requirements. From the description above and your knowledge of libraries, identify three broad features of the LCS. Then, identify approximately 10 - 20 requirements of the LCS. Those which involve the current operation of the library should have a Medium priority. Those involving plans should have a Low priority. Some requirements will be tied to the features; some will not. You will not complete the Vision Document for the sake of these assignments. However, look through it and see what material it should contain. The portion we will create is section five of the Template, Product Features, since some of your requirements involve features of LCS. Hint: The reports form one feature, the borrowing of items forms a second, the returning of items forms a third, and maintaining patron accounts forms a fourth. Some of your requirements are separate from the features of the LCS. These include restrictions on the nature of the account number and access code. You can create these directly as part of an attribute matrix. Upload the MS Word documents (or, better, a PDF document from Overleaf/Latex), the Vision and other artifacts. Sometimes, requirements come first; sometimes, use cases come first. You should enter two use cases in this assignment and extract their requirements. First, write a fully dressed, essential use case entitled Borrow Material. This describes the actions when a Patron borrows Material, a book or a magazine, in person. Second, write a casual, essential use case entitled Return Material. This describes the actions that take place as a Library Clerk removes Material from a bin and presents it to the System, which removes the Material from the list of loaned material. 1. Part 1 - Recording the Borrow Material use case Section 2.1 is the Basic Flow, sometimes called the Typical Course of Events. This is where you specify what usually happens. Section 2.2 is where you specify one or more alternative course of events. I deleted the existing alternatives, and they typed in my own, using the Heading 3 style to identify the title of each. Save the document, and examine the Table of Contents. It may show some errors. These errors appear two paragraphs earlier when you deleted information from the document. A Table of Contents is just a field in a Word document, so if you toggle it twice, you should see a new Table of Contents, which reflects your entries. 2. Part 2 - Identifying the requirements Identify which statements in the use case, Actor Actions and System Responses correspond to requirements. These should include the Patron identifying herself (well, this is another use case), the System validating the identification, the System remembering the Loan, etc. For each requirement, highlight the appropriate text. 3. Part 3 - Recording the Return Material Use Case You may find the format we used to be overpowering and prefer something more straightforward. The beauty of a software development process is that you can alter it to suit your preferences. When entering the Actor Actions and the System Responses, do so in a table. You will save yourself much grief later. 5. Part 5 - Recording your use case Creating a diagram illustrating the use case for borrowing material would be best. The following paragraphs contain the instructions to create the use case diagram, including the actors involved in the use case. You will use the Borrow Material use case, and the actors will be Library Clerk and Patron. Type Borrow Material as the name of the use case. Create two actors, a Library Clerk and a Patron. The Patron should be to the left of the use case, and the Library Clerk to the right. The Library Clerk and the Patron are involved with the use case, the Patron as the initiator. Draw a Unidirectional Association (line bent to the right) from the Patron to the use case. If the association appears ragged, drag the actor (or the use case) up or down a little. The grid size constrains the amount you can drag. Having a larger grid size makes it more likely the elements of the diagram will line up accurately. Draw an Association from the Library Clerk to the use case. There will be other use cases we need. We have already seen the returned material. Later, you will see Apply for Library Card and Place Hold. Place all three on the use case diagram and add the appropriate associations. Note how the associations are added to the Browser window. Two associations will have a Patron and a Library Clerk, so your diagram may get slightly crowded. Assume that we are a little further along in the analysis, and we have decided we will be traditional and provide all patrons with a library card. Before we enter details about the use case, we will record some attributes for the Patron and Library Clerk. Attributes are data items, so a Patron needs a Card Number, a Name, and an Address. A Library Clerk needs an Employee Number and a Name. Yes, I know (and you should know too) that it would be better to have Title, First Name, Middle Initial, and Last Name attributes instead of Name. This is an analysis and design course, not a typing course. Right-click the Patron actor and choose Open Specification, or double-click the Patron actor. Display the General tab and add a few sentences of documentation. Remember, there are two types of patron - adult and child. Dont forget about attribute names (Card Number, Name, Address, or Patron Type), then right-click the name and choose Specification (or double-click the name.) Specifying a type for the attribute (Long, String, String, and String) will suffice for now. Add a few sentences of documentation. +++ Design the LCS logically, complete the full development of Inception and Elaboration, and discuss the potential Construction and Transition. Draw all essential diagrams of what else applies (e.g., Gantt chart, conceptual class diagram and domain models, interaction diagram) and prepare needed documents, e.g., Use Cases, Vision, etc., in groups using MS Word in Teams or Overleaf (we have student accounts of up to 6 members, connected to GitHub). +++ Please use the following online resources for your Assignment Report (examples and templates draft, subject to change): 1. https://www.craiglarman.com/wiki/downloads/applying_uml/larman-ch6-applying-evolutionaryuse-cases.pdf 2. A Use Case Specification Latex Template in Overleafe: https://www.overleaf.com/latex/templates/use-case-specification/zdwhtshzgmxd 3. https://www.overleaf.com/latex/templates/uml-diagrams-with-tikz-uml/ftfzzpmwnjqw 4. https://drawio-app.com/blog/uml-use-case-diagrams-with-draw-io/ 5. https://online.visual-paradigm.com/diagrams/solutions/free-use-case-diagram-tool/ 6. https://www.visual-paradigm.com/guide/agile-software-development/user-story-vs-use-case/ 7. https://confluence.atlassian.com/jirakb/using-jira-for-requirements-management193300521.html#:~:text=While%20JIRA%20has%20been%20developed,relevant%20resources%20fo r%20further%20information. 8. https://en.wikipedia.org/wiki/Use_case

Attachments:

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image_2

Step: 3

blur-text-image_3

Students also viewed these Programming questions

Question

Using (1) or (2), find L(f) if f(t) if equals: t cos 4t

Answered: 1 week ago