Click DVDs. Just click to pick. CS4125 Systems Analysis and Design Chantelle Geoghegan Danielle Frawley

Size: px
Start display at page:

Download "Click DVDs. Just click to pick. CS4125 Systems Analysis and Design Chantelle Geoghegan - 0544981 Danielle Frawley- 0545511"

Transcription

1 Click DVDs Just click to pick CS4125 Systems Analysis and Design Chantelle Geoghegan Danielle Frawley

2 BLANK MARKING SCHEME CS4125: Systems Analysis Assignment 1: Semester II, Name: Chantelle Geoghegan Name: Danielle Frawley ID: ID: Item Detailed Description Marks Allocated Sub-total Total Presentation General Presentation 2 Adherence to guidelines i.e. front cover sheet, blank marking scheme, table of contents 4 Narrative Narrative description of business 1 scenario 5 Software Is it linear (Waterfall) or iterative 1 Lifecycle (RUP). Discuss risk management strategy? 6 Project Plan Plan specifying timeline, deliverables, 1 and roles. 7 System System architecture diagram 1 Architecture 8 Requiremen Use case diagram(s) and structured 3 t use case descriptions(s) Non-functional (quality) attributes 1 5 Screen shots / report formats 1 9 Analysis Method used to identify candidate classes 1 3 Class diagram with generalisation, composition, multiplicity, dialog, control, entity, interface classes, etc. 1.5 Two communication diagram Marks Awarded ClickDVDs Page 1

3 Sequence diagram 1 State chart with annotated transition strings 1 Entity relationship diagram with cardinality 10 Design Description of an architectural or design pattern that was evaluated. Cannot use MVC, Broker and Singleton. 3 1 Pattern incorporated into class 7 diagram 2 Refinement of class diagram from analysis to include MVC architectural pattern, and collection classes 1 Refined interaction diagram from analysis with MVC elements 11 Data Fragments to illustrate different 1 dictionary artifacts created during requirements, analysis and design. 12 References 1 14 Online Week 8: Use cases 1 2 Assessment Week 10: Class and Communication Diagrams from analysis phase 1 TOTAL 30 ClickDVDs Page 2

4 TABLE OF CONTENTS Blank marking scheme... 1 Narrative Description... 5 Software Lifecycle Model [1]... 7 Project Plan and Allocation of Roles System Architecture Three-Tier Architecture Discussion of UML Workbench Used Requirements Functional Non-Functional Use Case Diagrams GUI Prototypes Staff User Interface Prototypes Member User Interface Prototypes Analysis CandiDate Objects Class Diagram Sequence Diagram Communication Diagram State Chart Entity Relationship Diagram Design Architectural Style Model-View-Controller Pattern State Pattern Proxy Pattern ClickDVDs Page 3

5 Façade Pattern CLASS Diagram including MVC Staff package Member Package Cart package Rental Package Dvd package price package Sequence Diagram including MVC Deployment Diagram Data Dictionary References ClickDVDs Page 4

6 NARRATIVE DESCRIPTION ClickDvds is a new company that has created an online shop whereby members can rent DVDs and have them delivered directly to their home. After registering their name and address, customers can browse through a wide selection of DVD titles and place them in a virtual shopping trolley. A maximum of three DVDs can be rented at one time by a single customer. Customers can add and remove DVDs from their shopping trolley or quit without making a purchase. Payment is made by submitting credit card details online. DVDs are dispatched on the day of order and delivery times are usually within 36 hours depending on the customer s location. Credit cards are debited on the day of dispatch. DVDs must be returned and have arrived in the store by the return date specified when the order was taken. If the DVD has not been returned by this date then an extra charge will be placed on the customer s account. The customer can extend the rental period after the order has been placed by accessing their online account. This will also place an outstanding charge on the customer s account if they do not wish to pay on order. Customers will not be able to rent any more DVDs until this charge has been paid. This is how the customer interacts with the system. In order to keep the system up to date there are many sub-systems involved. DVD Management Systems keeps a record of the DVDs that are available to rent as well as the DVDs that are currently rented and the date of return. This is the main subsystem used by the system. Through the website it informs the customer of the DVDs that are available to rent as well as the date when out-of-stock DVDs will be available. This system is also responsible for adding new DVD titles and removing DVD titles that are available to rent from the online store. If the DVD has not been returned by the return date, the system notifies the member management system and updates the member s cart information. Price Management Systems keeps the prices of DVDs. The price of a DVD depends on the type of DVD rented. For example, New Release movie costs more to rent than a Children s movie. The types include: New Release, Classic, Children's. Any outstanding payment a customer has is due to a late return or extending the rental time. Credit Card ClickDVDs Page 5

7 details are stored electronically for relay to the card processing centre when the DVDs are dispatched. Member Management System keeps a record of each member. Only customers that have an account can access the online system. Each member is represented by a membership number. This system is responsible for adding and removing a member as well as updating a member s details such as the member s name or address. The member system communicates with the account system to find out whether the customer owes any money. Rental Management System stores the DVDs information. This includes the DVDs name, type, rental period and price. The type, rental period and price can all be changed. The type of DVD may change depending on its release date and intended audience. The rental period is decided by the customer. The price depends on the type and rental period. Each Sub-System must communicate with each other in order to maintain the overall system and keep the information up to date. This results in a well-maintained, easy to use system. ClickDVDs Page 6

8 SOFTWARE LIFECYCLE MODEL [1 ] For our System Design software lifecycle model we have chosen to use the Traditional lifecycle, also known as the Waterfall lifecycle Model. The first formal description of the waterfall model is often cited to be an article published in 1970 by Winston W. Royce ( ) It was developed in the late 60 s to try and produce a systematic approach to engineering. There are 7 individual phases of the Waterfall lifecycle model which are to be followed sequentially. These phases are: System Engineering, Requirements analysis, Design, Construction, Testing, Installation and Maintenance. To follow the waterfall model, one proceeds from one phase to the next in a purely sequential manner and the model maintains that one should move to a phase only when a proceeding phase is completed and perfected. 1. System Engineering: This phase involves firstly identifying the major requirements that the system has The next step after this is to identify those parts of the system which would be best implemented in software, hardware and the components which should be allocated to human participants. In essence this phase of the Waterfall model defines how all the major parts of the system will interact with each other. 2. Requirements Analysis: This phase of the model is used for a more intense gathering of the systems requirements and also for clearly defining each of these requirements. Fact finding techniques are often used for the gathering of requirements and also to aid their analysis. During this phase the objective moves to identify what the system users would require from the software. 3. Design: When the systems requirements are known, then work can begin on determining how best to design and construct a system which fulfils these requirements. The design of the system is first concerned with the specification of the architecture which defines the software components and their relationships. It involves arriving at a balance between conflicting requirements within environment constraints. Human activities can also be included in the design at this phase. 4. Construction: ClickDVDs Page 7

9 This phase involves turning the completed system design into actual program code. Some of this coding may be automated, and can use different programming languages as well as different database management systems for different areas of the system. 5. Testing: There are several levels of testing performed on the system to ensure that it satisfies user requirements. Components can be tested individually and then as a subsystem. This is then followed by the testing of the whole system together. 6. Installation: After a successful testing phase the system can be transported to the customer for an introduction. The system needs to be introduced carefully to minimize disruption. There should be a contingency plan in place which is appropriate to the level of use. 7. Maintenance: As it is likely that the system will be subject to change over its lifetime, corrections to the software may have to be made at some point. It is also possible that the maintenance phase will be used for implementing aspects of the systems behavior which may not have been done before installation. This may have been due to time constraints etc. Requirements changes may also occur and this will often have to be taken into account during the maintenance stage. Supporting Arguments for the Waterfall Model: Time spent early on in software production can lead to greater economy later on in the software lifecycle; that is, it has been shown many times that a bug found in the early stages of the production lifecycle (such as requirements specification or design) is cheaper, in terms of money, effort and time, to fix than the same bug found later on in the process. A further argument for the waterfall model is that it places emphasis on documentation (such as requirements documents and design documents) as well as source code. In less designed and documented methodologies, should team members leave, much knowledge is lost and may be difficult for a project to recover from. Many prefer the waterfall model for its simple approach and argue that it is more disciplined. The waterfall model provides a structured approach; the model itself progresses linearly through easily understandable and explainable phases and thus is easy to understand. For each design phase in the Waterfall model there are a number of ClickDVDs Page 8

10 explicitly defined deliverables, which many see as a major justification of this model. These deliverables can be used to monitor productivity and also the quality of activity performed. Criticisms of the Waterfall Model: Many believe that real projects very rarely follow a sequential lifecycle like that of the Waterfall model. Some project phases overlap and certain things may need to be repeated. Others believe that it is impossible, for a project, to get one phase of a software product's lifecycle perfected before moving on to the next phases and learning from them. If clients change their requirements after a design is finished, that design must be modified to accommodate the new requirements, it assumes that designers are able to foresee problem areas without extensive prototyping and at least some investment into implementation. ClickDVDs Page 9

11 PROJECT PLAN AND ALLOCATION OF ROLES Week Deliverables Allocated to 07 Narrative Description Chantelle Geoghegan 07 Software Lifecycle Danielle Frawley 09 System Architecture Discussion Danielle Frawley Requirements Use Case Descriptions Non-Functional Requirements GUI Prototypes Use Case Diagrams Chantelle Geoghegan & Danielle Frawley Chantelle Geoghegan & Danielle Frawley Chantelle Geoghegan & Danielle Frawley Danielle Frawley Analysis List Candidate Objects Communication Diagram Sequence Diagram State Chart Entity Relationship Diagram Class Diagram Chantelle Geoghegan Chantelle Geoghegan Danielle Frawley Chantelle Geoghegan Chantelle Geoghegan Chantelle Geoghegan Design Class Diagram including MVC, State and Facade Patterns Sequence Diagram incl. MVC Architectural Style Description Chantelle Geoghegan Danielle Frawley Chantelle Geoghegan 12 Data Dictionary Danielle Frawley Extras Use Case using OCL Deployment Diagram Data Management incl. Proxy Pattern Danielle Frawley Danielle Frawley Chantelle Geoghegan ClickDVDs Page 10

12 SYSTEM ARCHITECTURE There are many integrated parts which make up the Click DVD system. Each part has its own functionality and so the decision was made to separate these parts of the system into their own distinct packages. In order to group these parts, it was essential to look at the different responsibilities of each integrated part. The packages were hence grouped as follows: Member Management Package This package includes everything to manage the Members of Click DVD. It includes a member entity which holds all relevant information for the members account. Staff Management Package This package includes everything needed to manage all the staff who is an employee of Click DVD. All staff details are held in a staff entity class. Rental Management Package The Rental Management Package was created to manage Rentals which can occur at Click DVD. DVD Management Package The DVD Management package was created to manage the DVDs in stock at ClickDVD. DVD details are stored in a DVD entity. Price Management Package The Price Management package includes everything needed to manage the prices of DVDs. The details for prices are stored in three different subclasses of an abstract class Price. Cart Management Package The Cart Management package is used to manage each member s cart. In the analysis phase the approach decided upon to take was to Program to interface, not implementation. This was done because by allowing the system to depend on interfaces instead of the implementation, there is lower dependency between classes. It also allows for implementation to vary. Two other benefits which can be seen from programming to interface not implementation are: Clients remain unaware of the specific types of objects they use, as long as the objects adhere to the interface that clients expect. Clients remain unaware of the classes that implement these objects. Clients only know about the abstract class or classes defining the interface. [4] ClickDVDs Page 11

13 This concept also allows us to build functional structures but to keep them loose enough for change and reusability. Concrete classes are instantiated, but by using the abstract class interface, (instead of the concrete classes ) flexibility is brought to the implementation. The package diagram below shows the dependencies between each package in the system as well as their respective interfaces. ClickDVDs Page 12

14 THREE-TIER ARCHITECTURE For the purposes of this project the standard 3 tier architecture is used for the Click DVD store system. The three layers included in the architecture are: Presentation Layer Business Layer Data Layer The implementation of this 3 tier architecture can be seen in the following diagram: ClickDVDs Page 13

15 DISCUSSION OF UML WORKBENCH USED For this project, Select Architect, from the Solutions Factory software package was used to create the UML diagrams included in the project. Select Solutions Factory is an integrated set of products and modeling tools for Service and Component based development, design review, requirements management code generation and reuse. It tightly couples component based development and solution assembly. It includes both analysis and design functionality. Select Architect is a feature of Select Solutions Factory and is what was primarily used for creating the UML diagrams in this project. Select Architect is a scalable design environment for pragmatic Business Motivation Modeling (BMM), Business Processing Modeling (BPM), Service and Component Based Development and design, UML and database design. Select Architect is widely recognized and accepted as a consistent innovator in the design tools and modeling tools market. As it was used in this project for the creation of UML diagrams such as sequence, communication, entity and class diagrams, it was essential to become familiar with the features and tools it uses. After these tools were mastered, Select Architect became an essential tool in the completion of this project. ClickDVDs Page 14

16 REQUIREMENTS FUNCTIONAL Use Case Goal In Context Rent DVD Member Requests to Rent a DVD for specified amount of time for an agreed price. Scope & Context Preconditions Success End Condition Failed End Condition Primary, Secondary Actors Trigger Description Company, Sub-function The customer is a member The DVD is available to be rented The customer has not gone over their limit for Renting DVDs Member has rented the DVD. There is one less DVD available. We have received money for the goods. We have not given the member the DVD, the correct DVD, or the member has not paid for the DVD Member, Administrator, Credit Card Company Request for Rental Step Action 1 Member requests to rent DVD 2 Verification that member is in system 3 Check DVD is in stock 4 Check Member hasn t gone over limit 5 Check for outstanding payments 6 Agree Rental Days 7 Member receives DVD 8 Store receives payment for DVD ClickDVDs Page 15

17 Extensions Step Branching Action 2a Customer is not member 2ai Customer is added to system 3a DVD is not in stock 3ai Renegotiate Rental 4a Member has exceeded Rental limit 4ai Order cancelled 5a Member exceeds agreed rental time 5ai Extend Rental Days Variations Step Branching Action 1 Member can order over the web 6 Member receives by post 7 Member pays by card Related Information Rent DVD Priority Top Performance 5 minutes to order instant payment Frequency 100 per day Channels to actors Interactive, Database Open Issues What if credit card is stolen? What if we only have part of the order? Due Date Release 1.0 Super ordinates Find Member, Find DVD Subordinates Add Rental USE CASE: Become Member Description In order to become a member the customer must register their details with the store. Once registered, the customer will receive a membership number which they will use to access the store. Pre-Conditions Post-Conditions Actor Actions System Response The customer is not already a member. The customer is a member and has 1. The actor selects the Register 2. Register Details page is displayed. ClickDVDs Page 16

18 Extension None received a membership number. button on the home page. 3. Required fields are filled out and the Register Account button is pressed. 4. Customer account is created using the received details. The customer s membership number is display on screen. USE CASE: Login Description The customer must enter their membership number and password to login. Pre-Conditions Post-Conditions Actor Actions System Response The customer must be a member and have a valid membership number. The customer has logged into the system and can now rent DVDs. 1. The actor selects the Login button from the home page. 3. Actor enters their membership number and 2. The system displays the login page. 4. Login is confirmed and redirects the actor to the home page. password into the required fields and presses the Confirm Login button. Alternative Courses Step 4 Login not valid, displays login not valid message. USE CASE: View Account Description The customer views their account details which display their registered information as ClickDVDs Page 17

19 well as DVDs currently rented and outstanding payments. Pre-Conditions Post-Conditions Actor Actions System Response The customer must be a member and have a valid membership number. The customer s account is displayed 1. The actor logs in (use case 2) 2. The View Account button is selected. 3. The customer s account is displayed. Extension After step 3 the customer can edit their account details. USE CASE: View Shopping Cart Description The customer can view their shopping cart while browsing for DVDs. The shopping cart displays all DVD which have been added. Pre-Conditions Post-Conditions Actor Actions System Response The customer must be a member and have a valid membership The customer s shopping is displayed 1. The actor logs in (use case 2) 2. The View Shopping Cart 3. Displays shopping cart. number. button is selected. Extension After Step 3 customer can edit shopping cart USE CASE: View Customer Account Description A staff member can view a customer s account by accessing the members screen and searching for the member by membership number. Pre-Conditions Post-Conditions Actor Actions System Response The staff knows the The customer s 1. The actor logs in customer account is displayed (use case 2) membership 2. Members tab is 3. Displays Member number. selected. Screen. 4. Membership 5. Members account ClickDVDs Page 18

20 number is entered into the search bar and the Search button is pressed. Extension After step 5 staff can edit the members account. is displayed. USE CASE: Return DVD Description Customer returns DVD within the agreed rental period. Staff updates the DVD quantity information and the customer account. Pre-Conditions Post-Conditions Actor Actions System Response The customer must have rented a DVD. The DVD must be returned on or before the agreed return date. The customer s account does not hold any late fees for that DVD. The DVD has been returned. 1. Actor logs in (use case 2). 2. Actor selects DVD tab 4. Actor searches for DVD by DVD ID 6. Actor updates quantity to reflect returned DVD. 8. Actor accesses customers account (use case 5) 9. Returned DVD is selected for the rented list and the Returned button is selected. 3. Displays DVD info page 5. Displays DVD information 7. Updates quantity available in Stock Control for selected DVD and updates Customer account with late fee. 10. Selected DVD is deleted from the customers rented list. Extension ClickDVDs Page 19

21 After step 10, if the DVD was returned late the staff can add a late fee to the customer s account USE CASE: Extend Rental Description The customer can extend the rental period of a currently rented DVD by logging into their members account and extending the rental period. The cost of this extension is then added to the customer s account. Pre-Conditions Post-Conditions Actor Actions System Response The customer must have a DVD currently rented. The customer has extended the rental period for the specific DVD. 1. Actor views account (use case 3) 2. A DVD currently rented is selected. 4. Rental period is extended and the Update button is pressed. 6. Customer pays extended rental fee (use case 9) 3. Select DVD details displayed. 5. Extended fee is added to customer account and the payment screen is displayed. 7. Customers account screen is displayed. Extension none USE CASE: Checkout Description After adding DVDs to the shopping cart, the customer then pays for the DVDs by processing to the checkout. Pre-Conditions Post-Conditions Actor Actions System Response The customer must The customer has 1. Actor views be a member. paid for rented shopping cart (use The customer has DVDs and the DVDs case 4). DVDs in the will be dispatched. 2. Checkout 3. Total payment ClickDVDs Page 20

22 shopping cart. button is selected. 4. Pay Now button selected (use case 9) due displayed. Extension After Step 3, customer cancels rental. USE CASE: Pay Fees Description Customer pays fees. Pre-Conditions Post-Conditions Actor Actions System Response The customer must be a member. The customer has fees to pay The customer no longer has fees on account. 1. Checkout DVDs (use case 8) 2. Credit card details entered and Pay button selected. 3. Credit card details page displayed. 7. Customers account updated to reflect no outstanding fees and customer account displayed. Alternative Course Step 1, access payments screen through extend rental (use case 10). USE CASE: Pay Outstanding Fees Description The customer can pay any outstanding fees obtain by extending rental period or returning DVD after the agreed rental period, by accessing their account. Pre-Conditions Post-Conditions Actor Actions System Response The customer must The customer no 1. Actor views be a member. longer has any account (use case ClickDVDs Page 21

23 The customer must outstanding 3). 3. Outstanding have outstanding payments. 2. Pay Outstanding payments total payments on their Fee button is displayed. account. selected. 5. Customers 4. Pay Now button account updated to selected (use case reflect no 9). outstanding fees. Extension none USE CASE: Cancel Membership Description The customer can cancel their membership by logging into the system and selecting delete account from the customer account page. The account is then removed from the customer account system. Pre-Conditions Post-Conditions Actor Actions System Response The customer must be a member. The customer must have no outstanding payments on their account. The customer is no longer a member. 1. Actor views account (use case 3) 2. Delete Membership button is pressed. 3. Customer account is deleted and customer is logged out. Extension After Step 2, customer has outstanding fees and is redirected to the payment screen. USE CASE: Delete Member Description A staff member can delete a member s account by accessing the account and deleting the member. Pre-Conditions Post-Conditions Actor Actions System Response ClickDVDs Page 22

24 The customer must The member be a member. The account has been staff must know the deleted. customers membership ID must be known. Extension: none Pre and Post Conditions OCL: Context: Member Pre: self.memberid exists() Post: self.memberid Empty self.name Empty self.address Empty self.phone Empty self. Empty self.ownedcart Empty 1. Actor views customers account (use case 5). 2. Delete Account button is selected. 3. Members account is deleted. USE CASE: Add New DVD Title Description A staff member can add a new DVD title to the online store by adding the DVDs details. Pre-Conditions Post-Conditions Actor Actions System Response The DVD must not be in the store already. The new DVD is added to the store. 1. Actor logs in (use case 2) 2. DVD tab is selected. 4. The relevant DVD details into the fields provided (Name, Type, ID) and the Add DVD button is selected. 3. The DVD information screen is displayed. 5. The new DVD is added to the store. ClickDVDs Page 23

25 Extension none USE CASE: Update DVD details Description When more DVD s arrive to the store or when DVD s are returned the quantity of the DVD must be updated to reflect the quantity currently in the store. Pre-Conditions Post-Conditions Actor Actions System Response DVD must be contained in the system. The quantity of the DVD has been updated. 1. Actor logs in (use case 2) 2. The actor selects DVD tab. 4. The actor searches for the DVD by ID. 6. The actor edits 3. The DVD screen is displayed 5. DVD information is displayed on screen. 7. The DVD details are updated. the DVD details and selects the Update button. Alternative Course Step 6, DVD type can be changed Step 6 DVD quantity can be changed Step 6 DVD can be removed by selecting the remove button. USE CASE: Update Price Description Each type has a fixed price associated with it and this can be changed in the price tab. Pre-Conditions Post-Conditions Actor Actions System Response The type must exist The type price is 1. Actor logs in (use in the system. updated. case 2) 2. The actor selects 3. The price screen the Price tab. is displayed. ClickDVDs Page 24

26 Alternative Course Step 4 The standard rental price is updated. Step 4 The late rental price is updated. Step 4 The extend rental price is updated. Step 4 The type rental price is updated. 4. The actor selects the price, edits the amount and selects the Update button. 5. The price for the selected type is updated. NON-FUNCTIONAL Non-Functional Requirement Availability Quality Reliability Scalability Usability Description As the DVD rental system is online it must be available to the customer at all times. The DVD rental system fulfils the customers expectations by conforming to the customer s requirements of renting a DVD online. The system is reliable as the required databases are backed up nightly in case of a system failure. The database for system use will often need to be increased in size as more DVD s are added. For this reason it needs to be easily scalable. As customers utilize this system the user- interface needs to be quite intuitive to use and user friendly. ClickDVDs Page 25

27 USE CASE DIAGRAMS ClickDVDs Page 26

28 ClickDVDs Page 27

29 ClickDVDs Page 28

30 GUI PROTOTYPES STAFF USER INTERFACE PROTOTYPES Adding, Updating and Deleting Types and Price Details UI Adding, Updating, Viewing and Deleting DVDs UI ClickDVDs Page 29

31 Adding, Updating, Viewing and Deleting Member Details UI MEMBER USER INTERFACE PROTOTYPES Browse DVDs ClickDVDs Page 30

32 Create a Rental ClickDVDs Page 31

33 View Cart ClickDVDs Page 32

34 ANALYSIS CANDIDATE OBJECTS The noun identification method was chosen to identify the candidate objects. Renting a DVD A customer must first be a member of the store to rent a DVD. When the member logs in, they can browse through a selection of DVDs and add them to a virtual shopping cart. The cart cannot contain more than three rentals at a time. Each DVD is a different price depending on its type and rental period. When the member is satisfied with their selection, the member can proceed to pay for their rentals. Update DVD details A staff member can update a DVD s details by searching for the DVD on the system. The staff member can then change this information and save the changes. Candidate Objects Member DVD Cart Rental Price ClickDVDs Page 33

35 CLASS DIAGRAM ClickDVDs Page 34

36 SEQUENCE DIAGRAM ClickDVDs Page 35

37 ClickDVDs Page 36

38 COMMUNICATION DIAGRAM ClickDVDs Page 37

39 STATE CHART ClickDVDs Page 38

40 ENTITY RELATIONSHIP DIAGRAM ClickDVDs Page 39

41 DESIGN ARCHITECTURAL STYLE After examining the class diagram created in the analysis phase, it was clear that a more structured approach should be taken in order to reduce the complexity and dependencies within the system. This involved introducing structural and behavioral patterns. The structural patterns chosen were the Proxy Pattern which was applied to the Data Management package and the façade pattern which was applied to the Entity interfaces. The behavioral pattern chosen was the State Pattern which was applied to the Cart Object. The Model-View-Controller pattern was also applied to the entire system. MODEL-VIEW-CONTROLLER PATTERN INTENT: Support user requirements that are presented through different interface styles and aids maintainability and portability. PROBLEM: The same information should be capable of presentation in different formats in different windows. Changes within one view should be reflected immediately in the other views. Changes in the user interface should be easy to make. Core functionality should be independent of the interface to enable multiple interface styles to co-exist. SOLUTION: Separate the core functionality (model) from the interface and through its incorporation of a mechanism for propagating updates to other views. The interface itself is split into two elements: the output presentation (view) and the input controller (controller). [3] The model-view-controller pattern was applied to the entire class diagram. This grouped the classes into three main components: models that comprise of the main functionality, views that present the user interface and controllers that manage the updates to views. ClickDVDs Page 40

42 STATE PATTERN INTENT: Allow an object to alter its behavior when it s internal state changes. The object will appear to change class. PROBLEM: An object exhibits different behavior when its internal state changes, making it appear that the object changes class at runtime. SOLUTION: Separate the state dependant behavior from the original class. [1] The cart object can be in one of four states. These states change dynamically as DVDs are added and removed from the cart. Changing the state of the cart changes the behavior of the object. As the cart has a state dependant behavior it was decided to apply the state pattern to the object. Applying the state pattern to the cart object reduces the amount of if-else statements. It also created a new class for each state which holds a state-specific version of the operations. PROXY PATTERN INTENT: Provides a proxy object as a placeholder for another object until it is required. PROBLEM: The way a persistent objects maintain a reference to other objects. SOLUTION: Use a proxy for each business class to link to where there is an association with another object or objects. [1] A database broker framework was designed to control the data required by the various objects. It purpose is to separate the business objects from the data storage implementation. A broker class was used for every business class that is persistent as it provides the mechanism to materialize and dematerialize objects to and from the database. The proxy pattern was then applied to this framework. The proxy holds a private instance of the real object; clients then execute actions on the proxy which are passed to the real object. The results from the real object are returned to the client via the proxy. ClickDVDs Page 41

43 FAÇADE PATTERN INTENT: Provide a unified interface to a set of interfaces in a subsystem. Façade defines a higher level interface that makes the system easier to use. PROBLEM: Need to minimize communications and dependencies. SOLUTION: Structuring a system into subsystems helps to reduce complexity and providing a simple interface. [1] The façade pattern was chosen to reduce the complexity of the system. The façade pattern was used with the Model-View-Controller pattern and was applied to the model components. This pattern was implemented by providing an interface that communicates with all subsystem interfaces. The view and the controller then communicate with this interface which reduces the complexity of the overall system. Figure 1 The Façade pattern [3] ClickDVDs Page 42

44 CLASS DIAGRAM INCLUDING MVC ClickDVDs Page 43

45 STAFF PACKAGE ClickDVDs Page 44

46 MEMBER PACKAGE ClickDVDs Page 45

47 CART PACKAGE RENTAL PACKAGE ClickDVDs Page 46

48 DVD PACKAGE PRICE PACKAGE ClickDVDs Page 47

49 SEQUENCE DIAGRAM INCLUDING MVC ClickDVDs Page 48

50 DEPLOYMENT DIAGRAM The Deployment diagram shows a PC Client which is connected to a server. The Server holds all of the java archive files for the MemberManagement package, Rental Management Package, DVDManagement package, Cart Package, Staff Management package and the PriceManagement package. These are all held on a server as they will all need to be accessed by the customers through means of a browser application which is held in the client (Referred to in the diagram by ClientApplication.jar). The means of connection from client to server is by TCP/IP. ClickDVDs Page 49

51 DATA DICTIONARY Name: Administrator Type: Actor Description: The Administrator is the role of the staff member uses the system and is responsible for a number of different operations to do with the day to day running of the store. These operations include: 1. Updating the price, genre, type of DVDs there are in store, 2. Adding new DVDs to the system and 3. Deleting DVDs, Members etc. Name: Member Type: Actor Description: The Member represents a member of the store, a customer who can interact with the system and perform various operations such as: Renting DVDs Extending the DVD rental period Browsing for DVDs Name: Credit Card Company Type: Actor Description: The Credit Card Company is an external actor, which deals with the payments from members credit cards for rentals. Name: Rentals Type: Logical Entity Description: The Rental Entity is used to store information about the various Rentals of DVDs that exist. Entity Relationships: Rental is contained in a Cart and requires a DVD. Name: Type: DVD Logical Entity ClickDVDs Page 50

52 Description: The DVD Entity is used to store information about the various DVD s that ClickDVD stores. Entity Relationships: DVD has a price and is required by Rental. Name: Cart Type: Logical Entity Description: The Cart Entity is used to store information about the Carts used by the members when choosing DVDs to rent. Entity Relationships: Cart contains Rental, and is owned by a member. Name: CartState Type: Abstract Class Description: The Cart can be in three different states. Active, Full, and Complete. The Cart State abstract class is used to show which methods are implemented in the Active, Full and Complete Classes. Name: ispaid Type: Boolean Description: The ispaid value is set to true when the credit card company validate the credit card payment. When this value is true, the cart state changes to paid. Name: Price Type: Logical Entity Description: The Price is used to store the different prices and points for each DVD. Different types of DVD have different prices. The three different types of DVD are New Release, Regular, and Children s. Name: Member Type: Logical Entity Description: The Member is used to store information about the various members of ClickDVDs. Such info includes: name address, ID, Phone and address. Entity Relationships: Member owns a Cart. Name: DVDManageable ClickDVDs Page 51

53 Type: Interface Description: The DVDManageable interface provides the functionality needed for the staff to manage the DVDs, for example adding or removing a DVD. Name: DVDViewable Type: Interface Description: The DVDViewable interface provides the functionality needed for the members to view DVDs. Name: RentalCollection Type: Collection Class Description: The RentalCollection class provides a collection of Rentals which can be accessed by the Cart. A Cart contains a collection of Rentals. Name: database [DataManagement] Type: Attribute Description: Used to represent the database which is used to hold the data for use in ClickDvds. Name: MemberManageable Type: Interface Description: The MemberManageable interface provides the functionality needed for the staff to manage the Members, for example, viewing, updating or removing a Member. Name: MemberAccount Type: Interface Description: The MemberAccount interface provides the functionality needed for the members to view their own accounts. Here they can delete their account, view, and update their account. As well as extend rentals currently occurring. ClickDVDs Page 52

54 REFERENCES 1. Bennett, S., et al. (2006). Object-Orientated Systems Analysis and Design, 3rd Edition. McGraw Hill 2. Fowler, M. (2006). UML DISTILLED THIRD EDITION. Addison-Wesley 3. Gamma, E., et al. (1995). Design Patterns. Addison-Wesley 4. Programming to interfaces not implementation. [Accessed ] ClickDVDs Page 53

Swirl. Multiplayer Gaming Simplified. CS4512 Systems Analysis and Design. Assignment 1 2010. Marque Browne 0814547. Manuel Honegger - 0837997

Swirl. Multiplayer Gaming Simplified. CS4512 Systems Analysis and Design. Assignment 1 2010. Marque Browne 0814547. Manuel Honegger - 0837997 1 Swirl Multiplayer Gaming Simplified CS4512 Systems Analysis and Design Assignment 1 2010 Marque Browne 0814547 Manuel Honegger - 0837997 Kieran O' Brien 0866946 2 BLANK MARKING SCHEME 3 TABLE OF CONTENTS

More information

CPS122 - OBJECT-ORIENTED SOFTWARE DEVELOPMENT. Team Project

CPS122 - OBJECT-ORIENTED SOFTWARE DEVELOPMENT. Team Project CPS122 - OBJECT-ORIENTED SOFTWARE DEVELOPMENT Team Project Due Dates: See syllabus for due dates for each milestone This project spans much of the semester, to be completed as a series of milestones, each

More information

IFML by Example: Modeling an Online Bookstore

IFML by Example: Modeling an Online Bookstore IFML by Example: Modeling an Online Bookstore This document exemplifies the versatility and adaptability of IFML by modeling the most common features available in a simple UI for a point of sale (POS)

More information

Software Requirements Specification for POS_Connect Page 1. Software Requirements Specification. for. POS_Connect. Version 1.0

Software Requirements Specification for POS_Connect Page 1. Software Requirements Specification. for. POS_Connect. Version 1.0 Page 1 Software Requirements Specification for POS_Connect Version 1.0 1/9/2013 Page 2 Table of Contents Table of Contents Revision History 1. Introduction 1.1 Purpose 1.2 Document Conventions 1.3 Intended

More information

CS 389 Software Engineering. Lecture 2 Chapter 2 Software Processes. Adapted from: Chap 1. Sommerville 9 th ed. Chap 1. Pressman 6 th ed.

CS 389 Software Engineering. Lecture 2 Chapter 2 Software Processes. Adapted from: Chap 1. Sommerville 9 th ed. Chap 1. Pressman 6 th ed. CS 389 Software Engineering Lecture 2 Chapter 2 Software Processes Adapted from: Chap 1. Sommerville 9 th ed. Chap 1. Pressman 6 th ed. Topics covered Software process models Process activities Coping

More information

Contents. Introduction and System Engineering 1. Introduction 2. Software Process and Methodology 16. System Engineering 53

Contents. Introduction and System Engineering 1. Introduction 2. Software Process and Methodology 16. System Engineering 53 Preface xvi Part I Introduction and System Engineering 1 Chapter 1 Introduction 2 1.1 What Is Software Engineering? 2 1.2 Why Software Engineering? 3 1.3 Software Life-Cycle Activities 4 1.3.1 Software

More information

Course Registration Case Study

Course Registration Case Study Course Registration Case Study Table of Contents Case Study...1 Case Study Background... 2 Course Registration System Problem Statement... 2 The Role of Tools... 2 Project Summary... 2 The Inception Phase...

More information

CS 487. Week 8. Reference: 1. Software engineering, roger s. pressman. Reading: 1. Ian Sommerville, Chapter 3. Objective:

CS 487. Week 8. Reference: 1. Software engineering, roger s. pressman. Reading: 1. Ian Sommerville, Chapter 3. Objective: CS 487 Week 8 Reading: 1. Ian Sommerville, Chapter 3. Objective: 1. To check the understandibility of the students in life cycle and process model for development of a software product. 2. To check if

More information

D6 INFORMATION SYSTEMS DEVELOPMENT. SOLUTIONS & MARKING SCHEME. June 2013

D6 INFORMATION SYSTEMS DEVELOPMENT. SOLUTIONS & MARKING SCHEME. June 2013 D6 INFORMATION SYSTEMS DEVELOPMENT. SOLUTIONS & MARKING SCHEME. June 2013 The purpose of these questions is to establish that the students understand the basic ideas that underpin the course. The answers

More information

Use Cases. Reference: Craig Larman, Applying UML and Patterns, Ch. 6

Use Cases. Reference: Craig Larman, Applying UML and Patterns, Ch. 6 Use Cases Reference: Craig Larman, Applying UML and Patterns, Ch. 6 Use Case What it is: Text story Widely used to discover and record (mostly functional) requirements What is it about: Some actor(s) using

More information

DOCUMENTING USE CASES

DOCUMENTING USE CASES Chapter 7 DOCUMENTING USE CASES There is a lot of documentation associated with Use Cases that needs to be organized somehow. You want the documentation to be understandable, but you need other things

More information

User experience storyboards: Building better UIs with RUP, UML, and use cases

User experience storyboards: Building better UIs with RUP, UML, and use cases Copyright Rational Software 2003 http://www.therationaledge.com/content/nov_03/f_usability_jh.jsp User experience storyboards: Building better UIs with RUP, UML, and use cases by Jim Heumann Requirements

More information

Advanced Software Test Design Techniques Use Cases

Advanced Software Test Design Techniques Use Cases Advanced Software Test Design Techniques Use Cases Introduction The following is an excerpt from my recently-published book, Advanced Software Testing: Volume 1. This is a book for test analysts and test

More information

Requirements engineering

Requirements engineering Learning Unit 2 Requirements engineering Contents Introduction............................................... 21 2.1 Important concepts........................................ 21 2.1.1 Stakeholders and

More information

Dr. Pat Mirenda. Software Design Specification Document

Dr. Pat Mirenda. Software Design Specification Document CPSC 319 Team 2 Dr. Pat Mirenda Software Design Specification Document Version: 1.2 Date: (03/17/2006) 2Communicate SDS Revisions Version Primary Author(s) Description of Version Date Completed 1.0 Wei

More information

Manual. Version: 1.0.0

Manual. Version: 1.0.0 Manual Version: 1.0.0 Table of Contents I. INTRODUCTION... 3 II. INSTALLATION... 5 a. System Requirements... 5 b. Installation... 5 c. Configure PayPal IPN... 5 d. Cron Setup... 6 e. Upload Email Logo...

More information

Case studies: Outline. Requirement Engineering. Case Study: Automated Banking System. UML and Case Studies ITNP090 - Object Oriented Software Design

Case studies: Outline. Requirement Engineering. Case Study: Automated Banking System. UML and Case Studies ITNP090 - Object Oriented Software Design I. Automated Banking System Case studies: Outline Requirements Engineering: OO and incremental software development 1. case study: withdraw money a. use cases b. identifying class/object (class diagram)

More information

High Level Design Distributed Network Traffic Controller

High Level Design Distributed Network Traffic Controller High Level Design Distributed Network Traffic Controller Revision Number: 1.0 Last date of revision: 2/2/05 22c:198 Johnson, Chadwick Hugh Change Record Revision Date Author Changes 1 Contents 1. Introduction

More information

Chap 1. Introduction to Software Architecture

Chap 1. Introduction to Software Architecture Chap 1. Introduction to Software Architecture 1. Introduction 2. IEEE Recommended Practice for Architecture Modeling 3. Architecture Description Language: the UML 4. The Rational Unified Process (RUP)

More information

Information Systems Analysis and Design CSC340. 2004 John Mylopoulos. Software Architectures -- 1. Information Systems Analysis and Design CSC340

Information Systems Analysis and Design CSC340. 2004 John Mylopoulos. Software Architectures -- 1. Information Systems Analysis and Design CSC340 XIX. Software Architectures Software Architectures UML Packages Client- vs Peer-to-Peer Horizontal Layers and Vertical Partitions 3-Tier and 4-Tier Architectures The Model-View-Controller Architecture

More information

What is a life cycle model?

What is a life cycle model? What is a life cycle model? Framework under which a software product is going to be developed. Defines the phases that the product under development will go through. Identifies activities involved in each

More information

Online Banking User Guide

Online Banking User Guide Online Banking User Guide Page 1 of 14 Set Up and Access to Online Banking How do I set up Online Banking? To enroll in Online Banking, complete the following: 1. Go to https://www.cobnks.com. 2. Under

More information

How To Create A Diagram On Rational Software Development Platform

How To Create A Diagram On Rational Software Development Platform Homework 7: Use Cases, Sequence Diagram, Activity Diagram, State Diagram Name : Student Number : Laboratory Time : Objectives Create a Use Case Diagram in Rational Software Development Platform Create

More information

Applying 4+1 View Architecture with UML 2. White Paper

Applying 4+1 View Architecture with UML 2. White Paper Applying 4+1 View Architecture with UML 2 White Paper Copyright 2007 FCGSS, all rights reserved. www.fcgss.com Introduction Unified Modeling Language (UML) has been available since 1997, and UML 2 was

More information

Managing Variability in Software Architectures 1 Felix Bachmann*

Managing Variability in Software Architectures 1 Felix Bachmann* Managing Variability in Software Architectures Felix Bachmann* Carnegie Bosch Institute Carnegie Mellon University Pittsburgh, Pa 523, USA fb@sei.cmu.edu Len Bass Software Engineering Institute Carnegie

More information

Basic Unified Process: A Process for Small and Agile Projects

Basic Unified Process: A Process for Small and Agile Projects Basic Unified Process: A Process for Small and Agile Projects Ricardo Balduino - Rational Unified Process Content Developer, IBM Introduction Small projects have different process needs than larger projects.

More information

State of Michigan Data Exchange Gateway. Web-Interface Users Guide 12-07-2009

State of Michigan Data Exchange Gateway. Web-Interface Users Guide 12-07-2009 State of Michigan Data Exchange Gateway Web-Interface Users Guide 12-07-2009 Page 1 of 21 Revision History: Revision # Date Author Change: 1 8-14-2009 Mattingly Original Release 1.1 8-31-2009 MM Pgs 4,

More information

CS411 Software Architecture Design Final Project Group 10 Customer Relationship Management System

CS411 Software Architecture Design Final Project Group 10 Customer Relationship Management System CS411 Software Architecture Design Final Project Group 10 Customer Relationship Management System Ali Ozcan Fuat Basik M. Yusuf Ertekin M. Emre Nevayeshirazi 20700687 20701411 20702750 20701946 Customer

More information

Use Case Diagrams. Tutorial

Use Case Diagrams. Tutorial Use Case Diagrams Tutorial What is a use case? A requirements analysis concept A case of a use of the system/product Describes the system's actions from a the point of view of a user Tells a story A sequence

More information

Copyright 2006 Business Management Systems. Web Based ERP/CRM Software

Copyright 2006 Business Management Systems. Web Based ERP/CRM Software Web Based ERP/CRM Software INTRODUCTION...8 Features... 9 Services... 10 INSTALLATION...11 CUSTOMER FILE...12 Add Customer... 12 Modify Customer... 14 Add Ship To... 15 Modify Ship To... 16 Reports...

More information

Web Forms for Marketers 2.3 for Sitecore CMS 6.5 and

Web Forms for Marketers 2.3 for Sitecore CMS 6.5 and Web Forms for Marketers 2.3 for Sitecore CMS 6.5 and later User Guide Rev: 2013-02-01 Web Forms for Marketers 2.3 for Sitecore CMS 6.5 and later User Guide A practical guide to creating and managing web

More information

Title Page. Hosted Payment Page Guide ACI Commerce Gateway

Title Page. Hosted Payment Page Guide ACI Commerce Gateway Title Page Hosted Payment Page Guide ACI Commerce Gateway Copyright Information 2008 by All rights reserved. All information contained in this documentation, as well as the software described in it, is

More information

Classical Software Life Cycle Models

Classical Software Life Cycle Models Classical Software Life Cycle Models SWEN 301 Trimester 1, 2015 Lecturer: Dr Hui Ma Engineering and Computer Science Lecture slides make use of material provided on the textbook's companion website Motivation

More information

Customer Bank Account Management System Technical Specification Document

Customer Bank Account Management System Technical Specification Document Customer Bank Account Management System Technical Specification Document Technical Specification Document Page 1 of 15 Table of Contents Contents 1 Introduction 3 2 Design Overview 4 3 Topology Diagram.6

More information

Scenario-based Requirements Engineering and User-Interface Design

Scenario-based Requirements Engineering and User-Interface Design Scenario-based Requirements Engineering and User-Interface Institut für Computertechnik ICT Institute of Computer Technology Hermann Kaindl Vienna University of Technology, ICT Austria kaindl@ict.tuwien.ac.at

More information

Object-oriented design methodologies

Object-oriented design methodologies Object-oriented design methodologies An object-oriented methodology is defined as the system of principles and procedures applied to object-oriented software development. Five years ago, there was no standard

More information

New World Construction FTP service User Guide

New World Construction FTP service User Guide New World Construction FTP service User Guide A. Introduction... 2 B. Logging In... 4 C. Uploading Files... 5 D. Sending Files... 6 E. Tracking Downloads... 10 F. Receiving Files... 11 G. Setting Download

More information

E-Commerce on Android OS

E-Commerce on Android OS Degree project E-Commerce on Android OS Author: Mohammd Hossein Malekzadeh Dirin & Nima Mohammad Hassan Zadeh Khiabani Date: 2011-09-16 Subject: Computer Sience Level: Master Course code: 5DV00E Abstract

More information

Requirements / Use Case Specification

Requirements / Use Case Specification Object - Oriented Programming & Design Part IX - UML Use Case Diagrams CSCI 4448 - Spring 2002 Requirements / Use Case Specification Your way of echoing to the customer what you heard him/her say he/she

More information

The Role of the Software Architect

The Role of the Software Architect IBM Software Group The Role of the Software Architect Peter Eeles peter.eeles@uk.ibm.com 2004 IBM Corporation Agenda Architecture Architect Architecting Requirements Analysis and design Implementation

More information

Quantification and Traceability of Requirements

Quantification and Traceability of Requirements Quantification and Traceability of Requirements Gyrd Norvoll Master of Science in Computer Science Submission date: May 2007 Supervisor: Tor Stålhane, IDI Norwegian University of Science and Technology

More information

Complete Web Application Security. Phase1-Building Web Application Security into Your Development Process

Complete Web Application Security. Phase1-Building Web Application Security into Your Development Process Complete Web Application Security Phase1-Building Web Application Security into Your Development Process Table of Contents Introduction 3 Thinking of security as a process 4 The Development Life Cycle

More information

SOA REFERENCE ARCHITECTURE: WEB TIER

SOA REFERENCE ARCHITECTURE: WEB TIER SOA REFERENCE ARCHITECTURE: WEB TIER SOA Blueprint A structured blog by Yogish Pai Web Application Tier The primary requirement for this tier is that all the business systems and solutions be accessible

More information

Chapter 4 Software Lifecycle and Performance Analysis

Chapter 4 Software Lifecycle and Performance Analysis Chapter 4 Software Lifecycle and Performance Analysis This chapter is aimed at illustrating performance modeling and analysis issues within the software lifecycle. After having introduced software and

More information

How to test and debug an ASP.NET application

How to test and debug an ASP.NET application Chapter 4 How to test and debug an ASP.NET application 113 4 How to test and debug an ASP.NET application If you ve done much programming, you know that testing and debugging are often the most difficult

More information

SCATS SALES AND CUSTOMER TRACKING SYSTEM SOFTWARE REQUIREMENTS SPECIFICATION VERSION: FINAL 1.0

SCATS SALES AND CUSTOMER TRACKING SYSTEM SOFTWARE REQUIREMENTS SPECIFICATION VERSION: FINAL 1.0 SCATS SALES AND CUSTOMER TRACKING SYSTEM SOFTWARE REQUIREMENTS SPECIFICATION VERSION: FINAL 1.0 OCTOBER 28, 2001 REVISION CHART Version Primary Author(s) Description of Version Date Completed Draft Johnny

More information

Decomposition into Parts. Software Engineering, Lecture 4. Data and Function Cohesion. Allocation of Functions and Data. Component Interfaces

Decomposition into Parts. Software Engineering, Lecture 4. Data and Function Cohesion. Allocation of Functions and Data. Component Interfaces Software Engineering, Lecture 4 Decomposition into suitable parts Cross cutting concerns Design patterns I will also give an example scenario that you are supposed to analyse and make synthesis from The

More information

Object Oriented Programming. Risk Management

Object Oriented Programming. Risk Management Section V: Object Oriented Programming Risk Management In theory, there is no difference between theory and practice. But, in practice, there is. - Jan van de Snepscheut 427 Chapter 21: Unified Modeling

More information

Stock Trader System. Architecture Description

Stock Trader System. Architecture Description Stock Trader System Architecture Description Michael Stevens mike@mestevens.com http://www.mestevens.com Table of Contents 1. Purpose of Document 2 2. System Synopsis 2 3. Current Situation and Environment

More information

THE DEVELOPMENT OF A WEB BASED MULTIMEDIA INFORMATION SYSTEM FOR BUILDING APPRAISAL

THE DEVELOPMENT OF A WEB BASED MULTIMEDIA INFORMATION SYSTEM FOR BUILDING APPRAISAL THE DEVELOPMENT OF A WEB BASED MULTIMEDIA INFORMATION SYSTEM FOR BUILDING APPRAISAL Dominic O' Sullivan Department of Civil & Environmental Engineering National University of Ireland, Cork. Dr. Marcus

More information

A Meeting Room Scheduling Problem

A Meeting Room Scheduling Problem A Scheduling Problem Objective Engineering, Inc. 699 Windsong Trail Austin, Texas 78746 512-328-9658 FAX: 512-328-9661 ooinfo@oeng.com http://www.oeng.com Objective Engineering, Inc., 1999-2007. Photocopying,

More information

A UML Introduction Tutorial

A UML Introduction Tutorial A UML Introduction Tutorial 1/27/08 9:55 PM A UML Introduction Tutorial In this tutorial you will learn about the fundamentals of object oriented modelling, the Unified Modelling Language and the software

More information

UNIFACE Component-based. Development Methodology UNIFACE V7.2. 151157206-00 Revision 0 Dec 2000 UMET

UNIFACE Component-based. Development Methodology UNIFACE V7.2. 151157206-00 Revision 0 Dec 2000 UMET UNIFACE Component-based Development Methodology UNIFACE V7.2 151157206-00 Revision 0 Dec 2000 UMET UNIFACE Component-based Development Methodology Revision 0 Restricted Rights Notice This document and

More information

Electronic Data Solutions. E-Prescription System Software Requirement Specifications. Version 1.0

Electronic Data Solutions. E-Prescription System Software Requirement Specifications. Version 1.0 E-Prescription System Software Requirement Specifications Version 1.0 Contents 1. Purpose... 3 1.1. Scope... 3 1.2. Definitions and abbreviations... 3 1.3. Overview... 3 2. Overall Description... 4 2.2

More information

Software Design Document for Online Shopping Mall TEXAS A&M UNIVERSITY 11/15/2010

Software Design Document for Online Shopping Mall TEXAS A&M UNIVERSITY 11/15/2010 Software Design Document for Online Shopping Mall TEXAS A&M UNIVERSITY 11/15/2010 Prepared by: Ross Dusenbury, Bhawana Goel, Dongkun Kim, Tarun Kumar Nandi Suresh Babu, Yuanling Li, Hongtao Quin, Vijaya

More information

Software Requirements Specification. Online Shop Software

Software Requirements Specification. Online Shop Software Software Requirements Specification for Online Shop Software Version 1.0 Prepared by Klaudio Dervishaj UNIVERSITY OF NEW YORK, TIRANE February 15, 2012 Table of Contents Table of Contents... ii 1. Introduction...1

More information

Introduction to Systems Analysis and Design

Introduction to Systems Analysis and Design Introduction to Systems Analysis and Design What is a System? A system is a set of interrelated components that function together to achieve a common goal. The components of a system are called subsystems.

More information

business.officedepot.com User Guide

business.officedepot.com User Guide business.officedepot.com User Guide https://business.officedepot.com CONTACT INFORMATION Contact For Customer Service: Call 888.263.3423 (888.2.OFFICE) For Technical Support: Call 800.269.6888 or e-mail

More information

How to Make Register and Make Online Bookings

How to Make Register and Make Online Bookings Contents: How to Make Register and Make Online Bookings Online Booking Website Registration Home Page Quick Links Manage Bookings Memberships Unpaid Sales Online Booking Website To book online you will

More information

A Review of an MVC Framework based Software Development

A Review of an MVC Framework based Software Development , pp. 213-220 http://dx.doi.org/10.14257/ijseia.2014.8.10.19 A Review of an MVC Framework based Software Development Ronnie D. Caytiles and Sunguk Lee * Department of Multimedia Engineering, Hannam University

More information

Using Use Cases for requirements capture. Pete McBreen. 1998 McBreen.Consulting

Using Use Cases for requirements capture. Pete McBreen. 1998 McBreen.Consulting Using Use Cases for requirements capture Pete McBreen 1998 McBreen.Consulting petemcbreen@acm.org All rights reserved. You have permission to copy and distribute the document as long as you make no changes

More information

Problem Statement. Jonathan Huang Aditya Devarakonda. Overview

Problem Statement. Jonathan Huang Aditya Devarakonda. Overview Jonathan Huang Aditya Devarakonda Problem Statement Overview Automated job schedulers have been extensively studied and implemented in large clusters and supercomputers. However, many of these clusters

More information

ntier Verde: Simply Affordable File Storage No previous storage experience required

ntier Verde: Simply Affordable File Storage No previous storage experience required ntier Verde: Simply Affordable File Storage No previous storage experience required April 2014 1 Table of Contents Abstract... 3 The Need for Simplicity... 3 Installation... 3 Professional Services...

More information

e-portal Web Orders Instructions:

e-portal Web Orders Instructions: e-portal Web Orders Instructions: Login Page Please save the http://opa.uchc.edu/uchc_eportal_1.htm in your favorites. This is the page that you must Login from. Important information regarding the system

More information

Smart Inventory Management System

Smart Inventory Management System Governors State University OPUS Open Portal to University Scholarship All Capstone Projects Student Capstone Projects Fall 2015 Smart Inventory Management System Ajay Akarapu Governors State University

More information

Use Cases. Massimo Felici. Massimo Felici Use Cases c 2004 2011

Use Cases. Massimo Felici. Massimo Felici Use Cases c 2004 2011 Use Cases Massimo Felici Use Cases 1 Support requirements engineering activities and the requirement process Capture what a system is supposed to do, i.e., systems functional requirements Describe sequences

More information

Process Methodology. Wegmans Deli Kiosk. for. Version 1.0. Prepared by DELI-cious Developers. Rochester Institute of Technology

Process Methodology. Wegmans Deli Kiosk. for. Version 1.0. Prepared by DELI-cious Developers. Rochester Institute of Technology Process Methodology for Wegmans Deli Kiosk Version 1.0 Prepared by DELI-cious Developers Rochester Institute of Technology September 15, 2013 1 Table of Contents 1. Process... 3 1.1 Choice... 3 1.2 Description...

More information

BCS THE CHARTERED INSTITUTE FOR IT. BCS HIGHER EDUCATION QUALIFICATIONS BCS Level 5 Diploma in IT SYSTEMS ANALYSIS & DESIGN EXAMINERS REPORT

BCS THE CHARTERED INSTITUTE FOR IT. BCS HIGHER EDUCATION QUALIFICATIONS BCS Level 5 Diploma in IT SYSTEMS ANALYSIS & DESIGN EXAMINERS REPORT BCS THE CHARTERED INSTITUTE FOR IT BCS HIGHER EDUCATION QUALIFICATIONS BCS Level 5 Diploma in IT SYSTEMS ANALYSIS & DESIGN EXAMINERS REPORT Monday 28 th September 2015 Case Study for both sections A and

More information

Analysis and Design with UML

Analysis and Design with UML Analysis and Design with UML Page 1 Agenda Benefits of Visual Modeling History of the UML Visual Modeling with UML The Rational Iterative Development Process Page 2 What is Visual Modeling? Item Order

More information

Bijlage1. Software Requirements Specification CIS. For. Version 1.0 final. Prepared by Saidou Diallo. HvA/Inaxion. November 2009

Bijlage1. Software Requirements Specification CIS. For. Version 1.0 final. Prepared by Saidou Diallo. HvA/Inaxion. November 2009 Bijlage1 Software Requirements Specification For CIS Version 1.0 final Prepared by Saidou Diallo HvA/Inaxion November 2009 Copyright 2009/2010 Inaxion BV. Table of Contents 1. Introduction...3 1.1 Purpose...

More information

Requirement engineering Exercise the POS System solution

Requirement engineering Exercise the POS System solution Requirement engineering Exercise the POS System solution Problem Description A POS (Point-Of-Sale) system is a computer system typically used to manage the sales in retail stores. It includes hardware

More information

New York University Computer Science Department Courant Institute of Mathematical Sciences

New York University Computer Science Department Courant Institute of Mathematical Sciences New York University Computer Science Department Courant Institute of Mathematical Sciences Course Title: Software Engineering Course Number: g22.2440-001 Instructor: Jean-Claude Franchitti Session: 4 (Individual)

More information

RUP Design. Purpose of Analysis & Design. Analysis & Design Workflow. Define Candidate Architecture. Create Initial Architecture Sketch

RUP Design. Purpose of Analysis & Design. Analysis & Design Workflow. Define Candidate Architecture. Create Initial Architecture Sketch RUP Design RUP Artifacts and Deliverables RUP Purpose of Analysis & Design To transform the requirements into a design of the system to-be. To evolve a robust architecture for the system. To adapt the

More information

Auditing UML Models. This booklet explains the Auditing feature of Enterprise Architect. Copyright 1998-2010 Sparx Systems Pty Ltd

Auditing UML Models. This booklet explains the Auditing feature of Enterprise Architect. Copyright 1998-2010 Sparx Systems Pty Ltd Auditing UML Models Enterprise Architect is an intuitive, flexible and powerful UML analysis and design tool for building robust and maintainable software. This booklet explains the Auditing feature of

More information

A Comparison of SOA Methodologies Analysis & Design Phases

A Comparison of SOA Methodologies Analysis & Design Phases 202 A Comparison of SOA Methodologies Analysis & Design Phases Sandra SVANIDZAITĖ Institute of Mathematics and Informatics, Vilnius University Abstract. Service oriented computing is a new software engineering

More information

PEP 4 Georgia First Marketplace (Sciquest)

PEP 4 Georgia First Marketplace (Sciquest) This course covers the following objectives 1) Reviewing PEP1-PEP3. 2) Introduction to GA First Marketplace. 3) Marketplace Shopper. 4) Marketplace User/Requester. 5) Enhanced Automatic Approval Workflow.

More information

Systems Integration: Co C mp m onent- t bas a e s d s o s ftw ft a w r a e r e ngin i eeri r n i g

Systems Integration: Co C mp m onent- t bas a e s d s o s ftw ft a w r a e r e ngin i eeri r n i g Systems Integration: Component-based software engineering Objectives To explain that CBSE is concerned with developing standardised components and composing these into applications To describe components

More information

How to Build an E-Commerce Application using J2EE. Carol McDonald Code Camp Engineer

How to Build an E-Commerce Application using J2EE. Carol McDonald Code Camp Engineer How to Build an E-Commerce Application using J2EE Carol McDonald Code Camp Engineer Code Camp Agenda J2EE & Blueprints Application Architecture and J2EE Blueprints E-Commerce Application Design Enterprise

More information

Sequence Diagram Tutorial. From: UML Distilled, Third Edition, Chapter 4 M. Fowler

Sequence Diagram Tutorial. From: UML Distilled, Third Edition, Chapter 4 M. Fowler Sequence Diagram Tutorial From: UML Distilled, Third Edition, Chapter 4 M. Fowler Use Cases and Scenarios A use case is a collection of interactions between external actors and a system In UML, a use case

More information

Tabit. University of Arkansas CSCE Department Capstone I Final Proposal Fall 2014. Martin Bruckner, Brandon Foster, Nicolas Nunez, Adrian Ordorica

Tabit. University of Arkansas CSCE Department Capstone I Final Proposal Fall 2014. Martin Bruckner, Brandon Foster, Nicolas Nunez, Adrian Ordorica University of Arkansas CSCE Department Capstone I Final Proposal Fall 2014 Tabit Martin Bruckner, Brandon Foster, Nicolas Nunez, Adrian Ordorica Abstract The goal of the project is to create business management

More information

Automating Rich Internet Application Development for Enterprise Web 2.0 and SOA

Automating Rich Internet Application Development for Enterprise Web 2.0 and SOA Automating Rich Internet Application Development for Enterprise Web 2.0 and SOA Enterprise Web 2.0 >>> FAST White Paper November 2006 Abstract Modern Rich Internet Applications for SOA have to cope with

More information

UML TUTORIALS THE USE CASE MODEL

UML TUTORIALS THE USE CASE MODEL UML TUTORIALS THE USE CASE MODEL www.sparxsystems.com.au Sparx Systems 2004 Page 1/5 describes the proposed functionality of the new system. A Use Case represents a discrete unit of interaction between

More information

The Software Process. The Unified Process (Cont.) The Unified Process (Cont.)

The Software Process. The Unified Process (Cont.) The Unified Process (Cont.) The Software Process Xiaojun Qi 1 The Unified Process Until recently, three of the most successful object-oriented methodologies were Booch smethod Jacobson s Objectory Rumbaugh s OMT (Object Modeling

More information

Warehouse R x Inventory Management Software. Technical Overview

Warehouse R x Inventory Management Software. Technical Overview Warehouse R x Inventory Management Software Technical Overview January 19, 2009 System Overview Warehouse R X is the latest version of Daifuku America s Warehouse Control System (WCS) software. It provides

More information

OO Analysis and Design with UML and USDP. Solutions. Created by Dr. Jim Arlow. Version 2.0

OO Analysis and Design with UML and USDP. Solutions. Created by Dr. Jim Arlow. Version 2.0 OO Analysis and Design with UML and USDP Solutions Created by Dr. Jim Arlow Version 2.0 Table of Contents 1 OOAD with UML and USDP - Sample Solutions....................... 1 1.1 Introduction............................................1

More information

Fax User Guide 07/31/2014 USER GUIDE

Fax User Guide 07/31/2014 USER GUIDE Fax User Guide 07/31/2014 USER GUIDE Contents: Access Fusion Fax Service 3 Search Tab 3 View Tab 5 To E-mail From View Page 5 Send Tab 7 Recipient Info Section 7 Attachments Section 7 Preview Fax Section

More information

www.cathaybank.com Cathay Business Online Banking Quick Guide

www.cathaybank.com Cathay Business Online Banking Quick Guide www.cathaybank.com Cathay Business Online Banking Quick Guide Effective 06/2016 Disclaimer: The information and materials in these pages, including text, graphics, links, or other items are provided as

More information

Software Architecture. Schahram Dustdar Distributed Systems Group TU Wien

Software Architecture. Schahram Dustdar Distributed Systems Group TU Wien Software Architecture Schahram Dustdar Distributed Systems Group TU Wien 1 Main Topics Software Architecture: Introduction Architecture and Architecture Disciplines Architectural Requirements Architectural

More information

Web Application Architectures

Web Application Architectures Web Engineering Web Application Architectures Copyright 2013 Ioan Toma & Srdjan Komazec 1 Where we are? # Date Title 1 5 th March Web Engineering Introduction and Overview 2 12 th March Requirements Engineering

More information

Software Requirements Specification. Human Resource Management System. Sponsored by Siemens Enterprise Communication. Prepared by InnovaSoft

Software Requirements Specification. Human Resource Management System. Sponsored by Siemens Enterprise Communication. Prepared by InnovaSoft Software Requirements Specification Human Resource Management System Sponsored by Siemens Enterprise Communication Prepared by InnovaSoft Cansu Hekim - 1630888 Bekir Doğru - 1560085 Zaman Safari - 1572254

More information

Engineering Design. Software. Theory and Practice. Carlos E. Otero. CRC Press. Taylor & Francis Croup. Taylor St Francis Croup, an Informa business

Engineering Design. Software. Theory and Practice. Carlos E. Otero. CRC Press. Taylor & Francis Croup. Taylor St Francis Croup, an Informa business Software Engineering Design Theory and Practice Carlos E. Otero CRC Press Taylor & Francis Croup Boca Raton London New York CRC Press is an imprint of the Taylor St Francis Croup, an Informa business AN

More information

4.4 What is a Requirement? 4.5 Types of Requirements. Functional Requirements

4.4 What is a Requirement? 4.5 Types of Requirements. Functional Requirements 4.4 What is a Requirement? It is a statement describing either 1) an aspect of what the proposed system must do, or 2) a constraint on the system s development. In either case it must contribute in some

More information

Architecture Design Version1.0. Architecture Design CUSTOMER RELATION MANAGEMENT SYSTEM Version 1.0

Architecture Design Version1.0. Architecture Design CUSTOMER RELATION MANAGEMENT SYSTEM Version 1.0 Architecture Design CUSTOMER RELATION MANAGEMENT SYSTEM Version 1.0 Submitted in partial fulfillment of the requirements of the degree of Master of Software Engineering CIS 895 MSE Project Kansas State

More information

EMC Documentum Composer

EMC Documentum Composer EMC Documentum Composer Version 6.5 User Guide P/N 300 007 217 A02 EMC Corporation Corporate Headquarters: Hopkinton, MA 01748 9103 1 508 435 1000 www.emc.com Copyright 2008 EMC Corporation. All rights

More information

Object-Oriented Systems Analysis and Design

Object-Oriented Systems Analysis and Design Object-Oriented Systems Analysis and Design Noushin Ashrafi Professor of Information System University of Massachusetts-Boston Hessam Ashrafi Software Architect Pearson Education International CONTENTS

More information

Software Engineering Introduction & Background. Complaints. General Problems. Department of Computer Science Kent State University

Software Engineering Introduction & Background. Complaints. General Problems. Department of Computer Science Kent State University Software Engineering Introduction & Background Department of Computer Science Kent State University Complaints Software production is often done by amateurs Software development is done by tinkering or

More information

User Guide for External Candidates

User Guide for External Candidates User Guide for External Candidates Release 13A Canada Mortgage and Housing Corporation August 2013 Developed for CMHC by: Remi R. Paquette Revised by: Kristen Provost Document Version: 1.0 Table of Contents

More information

Software Development in the Large!

Software Development in the Large! Software Development in the Large! Peter Eeles Executive IT Architect, IBM peter.eeles@uk.ibm.com IBM Rational Software Development Conference 2007 2007 IBM Corporation Agenda IBM Rational Software Development

More information