Assignment 4 - Software Eng
Assignment 4 - Software Eng
Assignment 4 - Software Eng
architecture
Logical View
UML Diagram
Conceptual Data Model
Model: Logical View
Package:
Di agram: UML
Author: Osho Lawrence, Jarnail Si ngh Date: 10/12/2012
Version: Assignment-4
Product
Product Id
Name
Description
Pri ce
Quantity Avail able
Status
Add Product
Update Product
Delete Product
Get Product Info
Admi nistrator
1.1
Adds
<ai1>
<ai2>
<ai3>
<ai4>
1.1
1.1
1.1
gets reports and summary
Adds
Have
*.0
*.0
Sales Record
Product Id
Customer Id
Quantity Sold
Product Price
Date
getReport
getT otalPrice
getCustomerHistroy
getSummary
updateRecord
<ai1>
<ai2>
<ai3>
<ai4>
<ai5>
1.1
*.0
Has
Customer
Customer Id
Name
Address
Emai l
Age
Integer
Vari able characters (30)
Vari able characters (60)
Vari able characters (40)
Integer
Add Customer
<ai1>
Update Customer <ai2>
Delete Customer <ai3>
...
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 AMs Apply Modeling
Standards practice.
Process View
Sequence Diagram
1.
2.
3.
4.
5.
6.
7.
8.
Development View
Component Diagram
Figure above shows the large-scale domain components for the system were 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 were considering both
business and technical aspects in our architecture, not just technical issues, and for whatever reason weve
chosen to create a single diagram which includes both views.
Interfaces and Ports
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
determine whether a package is cohesive, a good test is you should be able to give your package
a short, descriptive name. If you cant, 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 View
Classical Diagram
Modem
Hard Disk
Desktop-PC
Software
DBMS
Printer
Deployment Diagram
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.
Scenario
INITIAL ASSUMPTION:
The consumer has seen a receptionist (administrator) who has created a record in the system and
collected the consumers 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 consumers 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 consumers 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.
Appendix
Introduction
The 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.
Glossary
Access DB- database management system from Microsoft
Administrator- Manager, Supervisor
Application- purpose, usage
Encrypted- Encoded, Translated
Functionality- usefulness, practicality
Stock- stash, supply
Contact: IEEE at 445 Hoes Lane, Piscataway, NJ 08855. (800)678IEEE. IEEE Standards
System Architecture
System Models
System Requirements
Specifications
Natural Language
1. 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. Megans name
and info showed up on the Data Grid View with a unique Customer ID and then Susan clicked on
Megans inventory and clicked again on the Products Purchased button, only one product showed
up in a new form with todays 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 Susans 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.