17
4+1 view model of software architecture Logical View UML Diagram

Assignment 4 - Software Eng

Embed Size (px)

DESCRIPTION

Software Engineering case study documents

Citation preview

Page 1: Assignment 4 - Software Eng

4+1 view model of software architecture

Logical View

UML Diagram

1 . 1* . 0

1 . 11 . 1

1 . 1

1 . 1

* . 0 * . 0

* . 0

Conceptual Data ModelModel: Logical ViewPackage: Diagram: UMLAuthor: Osho Lawrence, Jarnail Singh Date: 10/12/2012 Version: Assignment-4

Adds

Adds

Has

Have

gets reports and summary

Product

Product IdNameDescriptionPriceQuantity AvailableStatus

Variable characters (7)Variable characters (30)Variable characters (1024)IntegerIntegerBoolean

Add ProductUpdate ProductDelete ProductGet Product Info

<ai1><ai2><ai3><ai4>

Customer

Customer IdNameAddressEmailAge

IntegerVariable characters (30)Variable characters (60)Variable characters (40)Integer

Add CustomerUpdate CustomerDelete Customer...

<ai1><ai2><ai3>

Administrator

User NamePassword

Variable characters (15)Variable characters (15)

Sales Record

Product IdCustomer IdQuantity SoldProduct PriceDate

Variable characters (7)IntegerIntegerDecimalDate & Time

getReportgetTotalPricegetCustomerHistroygetSummaryupdateRecord

<ai1><ai2><ai3><ai4><ai5>

Page 2: Assignment 4 - Software Eng

The Figure above is the version of the UML diagram which not only shows the Entities with its respective attributes and functions (shown in the figure) but also their relationships among each other. We have considered four Entities namely Administrator, Product, Customer and Sales Record.

We used a conceptual modeling style by naming the following attributes and methods using the formats Attribute Name and Method Name, respectively.  Following a consistent and sensible naming convention helps to make your diagrams readable, an important benefit of AM’s Apply Modeling Standards practice.

Process View

Sequence Diagram

1. Administrator wishes to login.2. Administrator wants to Add, Delete or Update Customer Record.

Page 3: Assignment 4 - Software Eng

3. Administrator wants to view information on the Customers.4. Administrator wants to send e-mail updates to all customers.5. Administrator wants to Add, Delete and update Products info.6. Administrator wants to view information on the Products.7. Administrator wants to update sales info.8. Administrator wants to Print Reports.

Development View

Component Diagram

Figure above shows the large-scale domain components for the system we’re building, This diagram includes both business and technical architecture aspects – the components with the infrastructure and database stereotypes are clearly technical in nature. The important thing is that we’re considering both business and technical aspects in our architecture, not just technical issues, and for whatever reason we’ve chosen to create a single diagram which includes both views.Interfaces and Ports

Page 4: Assignment 4 - Software Eng

Components may both provide and require interfaces. An interface is the definition of a collection of one or more methods, and zero or more attributes, ideally one that defines a cohesive set of behaviors.

A provided interface is modeled using the lollipop notation and a required interface is modeled using the socket notation.

A port is a feature of a classifier that specifies a distinct interaction point between the classifier and its environment. Ports are depicted as small squares on the sides of classifiers.

Ports can be named for e.g.the Data Access/Manipulation and Customer Info ports on the Customer component.

Package Diagram

Figure above is interesting because it shows my typical reason to use packages – to organize a

large diagram into several smaller ones. Packages should be cohesive.  Anything you put into the

package should make sense when considered with the rest of the contents of the package. To

Page 5: Assignment 4 - Software Eng

determine whether a package is cohesive, a good test is you should be able to give your package

a short, descriptive name. If you can’t, then you may have put several unrelated things into the

package. The important thing is that the diagram somehow adds value to your efforts.

Physical ViewClassical Diagram

Modem

 

Hard Disk

Desktop-PC

Software

Page 6: Assignment 4 - Software Eng

DBMS

Printer

Deployment Diagram

Page 7: Assignment 4 - Software Eng

A deployment diagram depicts a static view of the run-time configuration of processing nodes and the components that run on those nodes. In other words, deployment diagrams show the hardware for your system, the software that is installed on that hardware, and the middleware used to connect the disparate machines to one another. You want to create a deployment diagram for applications that are deployed to several machines.

Page 8: Assignment 4 - Software Eng

Use Case Diagram and Scenario

Scenario

INITIAL ASSUMPTION:

The consumer has seen a receptionist (administrator) who has created a record in the system and

collected the consumer’s personal information (name, address, age, email id etc.) if the customer

is new or else input the customer Id to check the status and inventory of the consumer. She enters

also the Product information also which the consumer has bought.

NORMAL:

The receptionist can also update and Delete the customer records as well as the product

information. The receptionist also has the right to check and go through the consumer and

product records. Moreover she can check that which products are in stock and which are not.

Whenever a product is sold then it automatically is stored in the sales records. The Receptionist

can also record or take out a printed form of the Sales Record Summary.

WHAT CAN GO WRONG?

The consumer’s record does not exist or cannot be found. The receptionist should create new

record and record personal information. Consumer status is not entered in the menu. The

receptionist should choose the ‘other’ option and enter free text describing the status.

Consumer cannot or will not provide information. The receptionist should enter free text

recording the consumer’s inability/unwillingness to provide information. The system should

print the standard exclusion form stating that the lack of information.

OTHER ACTIVITIES:

The Email-Id of the consumer enables him/her to receive e-mail updates about the new products

and new offers. A printed Receipt can also be taken out on the request of the consumer.

SYSTEM STATE ON COMPLETION:

Administrator is logged off. The system log showing the start and end time of the session

involved.

Page 9: Assignment 4 - Software Eng

Use Case Diagram

Page 10: Assignment 4 - Software Eng

Appendix

The Software Requirements Document

PrefaceThis document details the functionality required for the new Garnier Information Software (GIS) which will be used by the Garnier Inc.

IntroductionThe project is essentially a very small custom software application for a small home based business Garnier Inc. which requires a standalone PC application written that connects to an MS-Access Database and stores personal information about clients of the business. The system must keep track of the clients and provide the ability to email product information to them, and keep a history of their purchases, and produce sales reports and provide summaries on demand. The client wants a small simple and in expensive software application, that is easy to use.

GlossaryAccess DB- database management system from Microsoft Administrator- Manager, SupervisorApplication- purpose, usageEncrypted- Encoded, TranslatedFunctionality- usefulness, practicalityStock- stash, supply

User Requirements DefinitionThis Software System will enable the Client to enter personal Customer information which will be further used to keep records and let the customer know about the upcoming new products and new offers via e-mails or mails. It adds more customers and can also delete a customer. The application will keep a track of the product sales. The access to the software will be kept limited because the data stored through it will be confidential and carries personal information of the customers. Hence the software will be password encrypted. The manufacturing of the software will be completed within 20-25 days. The software will be created under the IEEE Software Standards.

Contact: IEEE at 445 Hoes Lane, Piscataway, NJ 08855. (800)678-IEEE. IEEE Standards

Page 11: Assignment 4 - Software Eng

System Architecture

System Requirements SpecificationsThis Software will provide a Graphical User Interface which will be connected to the MS-Access

Database. This system will be designed to enable the client to store the information about their

customers such as Customer Id, Last Name, First Name, Age, Address, E-mail, Product(s)

bought, Receipt of Purchase and Additional Comments. Moreover Data regarding the cosmetics

products will also be added to the database via the software such as Product ID, Product name,

Price, and its availability in the stock. All the data which will be entered by the user will be

stored in the Database maximizing the user’s work efficiency and production the system will

meet the user’s needs while remaining easy to understand and use.

More specifically, this system is designed to allow a user to manage, update and delete data

inputted in the database. The software will facilitate automatically updating the customers about

the new upcoming Products and various new offers via E-Mail/Mail. The Database also keeps

the records for the total Products Sale till Date. Hence this data can be used by the software

application to create a sales record in the doc format which can be further printed out. The same

goes for the product purchase Receipt.

Page 12: Assignment 4 - Software Eng

System Models

Page 13: Assignment 4 - Software Eng

System Requirements Specifications

Natural Language1. The System shall ask the user for a valid user id and password to access the functionality

of the Application.2. The System shall run an anti-virus scan to ensure that the application is Virus-Free.3. The System shall input the personal information of the customer in the Application and

hence store in the database.4. The System shall input the information of the Product in the Application and hence store

in the database.5. The system should be able update and delete data from the database using the

Application.6. The system shall send e-mails to the customers regarding the release of a new product or

a new offer before 15 days of the release of the product/offer.7. The system shall create a sales record and can be printed out whenever required.8. The system shall take out the print out of the receipt after the purchase of the product

which shows the product id and product name followed with the price.

User stories

Susan is the administrator who solely uses the PC and works as a receptionist in the company Garnier Inc.; she wishes to add Megan as a regular because Megan bought the Garnier Product for the first time and looks forward to come to the Store in the Future. She opens the software application and enters the her user-id which is susan_07 and password which is **********, The software did a small and precise virus scan, then she clicks on the new customer button and asks Megan for her Last Name, Address, E-mail Id, Age and the product info of the product she purchased. She enters all the data in the application and clicks on the Add Button. Megan’s name and info showed up on the Data Grid View with a unique Customer ID and then Susan clicked on Megan’s inventory and clicked again on the Products Purchased button, only one product showed up in a new form with today’s date on it. Then Susan clicked on the print Receipt Button which printed out the Receipt as the command was automatically given to printer. Before Megan leaves the store Susan informed Megan that she would receive emails regarding the new products being launched and new offers. After Megan leaves Susan’s Boss asks for the sales record for the year 2012. She goes to home menu and clicks on the Products button, then she clicks Sales Record which prompted her to enter the range of the date, she wants the sales. The sales popped out and then she printed out a copy and presented it to her boss.