Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Assignment MS 592

Download as pdf or txt
Download as pdf or txt
You are on page 1of 14

Course Code : MS 592

Course Title : System Analysis & Design


Department Name : Computer Science and Engineering

Submitted By
Student’s Name : Md. Ashikur Rahman
Student’s ID : 045-22-3-00-05-11-3-016
Program : M.Sc. in CSE
Batch : 29
Seme. Name & Year: Fall 2022

Submitted To
Rowjatul Zannat Eshita
Assistant Professor
Computer Science and Engineering Department
Royal University of Dhaka

Date of Submission: 21/11/2022


1. What is information? Discuss about different categories of information.
Information:
Information is a fact, thought or data conveyed or described through various types of
communication, like written, oral, visual and audio communications. It is knowledge shared or
obtained through study, instruction, investigation or news and you share it through the act of
communicating, whether verbally, nonverbally, visually, or through written word. Information
has different names, including intelligence, message, data, signal or fact. Knowing what type of
information you need or how to share it can help you save time, stay organized and establish
best practices for divulging information.
Categories of information:
Information can be categorized as:

 Strategic information
 Managerial information
 Operational information.

Strategic information
Strategic information is the information needed by top most management for decision making.
This information is not required by the lower levels in the organization. The information systems
that provide these kinds of information are known as Decision Support Systems (DSS).
For example the trends in revenues earned by the organization are required by the top
management for setting the policies of the organization.
Managerial information
Managerial information required by the middle management used for making short term
decisions and plans for the organization. Management information system (MIS) caters to such
information needs of the organization. Information like sales analysis for the past quarter or
yearly production details etc. fall under this category.
Operational information
Operational information relating to the daily or short term information needs of the
organization such as attendance records of the employees. This kind of information is required
at the operational level for carrying out the day-to-day operational activities. The information
system is known as Transaction Processing System (TPS) or Data Processing System (DPS).
Some examples of information provided by such systems are processing of orders, posting of
entries in bank, evaluating overdue purchaser orders etc.
2. What is SDLC? Describe different models of SDLC with appropriate figure.
The software development lifecycle (SDLC) is a framework that development teams use to
produce high-quality software in a systematic and cost-effective way. Both large and small
software organizations use the SDLC methodology.
The software development lifecycle gives organizations a systematic, step-by-step approach to
developing successful software from gathering the initial requirements for a new product. We’ll
teach you how to employ SDLC by maintaining a mature product on the market.
A good software engineer should have enough knowledge on how to choose the SDLC model
based on the project context and the business requirements.
Therefore, it may be required to choose the right SDLC model according to the specific concerns
and requirements of the project to ensure its success.
Types of Software developing life cycles (SDLC)

 Waterfall Model
 V-Shaped Model
 Evolutionary Prototyping Model
 Spiral Method (SDM)
 Iterative and Incremental Method
 Agile development

Waterfall Model
The Waterfall Model is a linear sequential flow. In which progress is seen as flowing steadily
downwards (like a waterfall) through the phases of software implementation. This means that
any phase in the development process begins only if the previous phase is complete. The
waterfall approach does not define the process to go back to the previous phase to handle
changes in requirement. The waterfall approach is the earliest approach and most widely known
that was used for software development.
The usage

For projects which not focus on changing the requirements, for example, projects initiated from
a request for proposals (RFPs), the customer has very clear documented requirements

Advantages and Disadvantages

Advantages Disadvantages

 Assumes that the requirements of a system


 Easy to explain to the users. can be frozen.
 Structures approach.  Very difficult to go back to any stage after it is
 Stages and activities are well defined. finished.
 Helps to plan and schedule the project.  A little flexibility and adjusting the scope are
 Verification at each stage ensures early difficult and expensive.
detection of errors/misunderstandings.  Costly and required more time, in addition to
 Each phase has specific deliverables. the detailed plan.

V-Shaped Model
It is an extension of the waterfall model, Instead of moving down in a linear way, the process
steps are bent upwards after the implementation and coding phase, to form the typical V
shape. The major difference between the V-shaped model and the waterfall model is the early
test planning in the V-shaped model.

The usage
 Software requirements clearly defined and known
 Software development technologies and tools are well-known
Advantages and Disadvantages

Advantages Disadvantages

 Simple and easy to use  Very inflexible, like the waterfall


 Each phase has specific deliverables. model.
 Higher chance of success over the  Adjusting the scope is difficult and
waterfall model due to the development expensive. The software is developed
of test plans early on during the life cycle. during the implementation phase, so no
 Works well for where requirements are early prototypes of the software are
easily understood. produced. The model doesn’t provide a
 Verification and validation of the product clear path for problems found during the
in the early stages of product testing phases.
development.

Prototyping Model
It refers to the activity of creating prototypes of software applications, for example, incomplete
versions of the software program being developed. It is an activity that can occur in software
development and it used to visualize some components of the software to limit the gap of
misunderstanding the customer requirements by the development team. This also will reduce
the iterations that may occur in the waterfall approach and are hard to be implemented due to
the inflexibility of the waterfall approach. So, when the final prototype is developed, the
requirement is considered to be frozen.

It has some types, such as:


Throwaway prototyping: Prototypes that are eventually discarded rather than becoming a part
of the finally delivered software
Evolutionary prototyping: prototypes that evolve into the final system through an iterative
incorporation of user feedback.

Incremental prototyping: The final product is built as separate prototypes. In the end, the
separate prototypes are merged in an overall design.

Extreme prototyping: used in web applications mainly. Basically, it breaks down web
development into three phases, each one based on the preceding one. The first phase is a static
prototype that consists mainly of HTML pages. In the second phase, the screens are
programmed and fully functional using a simulated services layer. In the third phase, the
services are implemented
The usage
 This process can be used with any software developing life cycle model. While this shall
be chosen when you are developing a system has user interactions. So, if the system
does not have user interactions, such as a system does some calculations shall not have
prototypes.
Advantages and Disadvantages

Advantages Disadvantages

 Reduced time and costs, but this  Insufficient analysis. User confusion of
can be a disadvantage if the prototype and finished system.
developer loses time in  Developer misunderstanding of user
developing the prototypes. objectives.
 Improved and increased user  Excessive development time of the prototype.
involvement.  It is costly to implement the prototypes

Spiral Model (SDM)


It is combining elements of both design and prototyping-in-stages, in an effort to combine
advantages of top-down and bottom-up concepts. This model of development combines the
features of the prototyping model and the waterfall model. The spiral model is favored for large,
expensive, and complicated projects. This model uses many of the same phases as the waterfall
model, in essentially the same order, separated by planning, risk assessment, and the building of
prototypes and simulations.

The usage

It is used in large applications and systems which built-in small phases or segments.
Advantages and Disadvantages

Advantages Disadvantages

 Estimates (i.e. budget, schedule, etc.) become  High cost and time to reach the final
more realistic as work progressed because product.
important issues are discovered earlier.  Needs special skills to evaluate the
 Early involvement of developers. risks and assumptions.
 Manages risks and develops the system into  Highly customized limiting re-
phases. usability

Iterative and Incremental Model


It is developed to overcome the weaknesses of the waterfall model. It starts with initial
planning and ends with deployment with the cyclic interactions in between. The basic idea
behind this method is to develop a system through repeated cycles (iterative) and in smaller
portions at a time (incremental), allowing software developers to take advantage of what was
learned during the development of earlier parts or versions of the system. It can consist of mini
waterfalls or mini V-Shaped models.

The usage
It is used in shrink-wrap applications and large systems which built-in small phases or segments.
Also, can be used in a system that has separated components, for example, an ERP system.
Which we can start with the budget module as a first iteration and then we can start with the
inventory module and so forth.
Advantages and Disadvantages

Advantages Disadvantages

 Produces business value early in  Requires heavy documentation.


the development lifecycle.  Follows a defined set of processes.
 Better use of scarce resources  Defines increments based on function and feature
through proper increment dependencies.
definition.  Requires more customer involvement than the
 Can accommodate some change linear approaches.
requests between increments.  Partitioning the functions and features might be
 More focused on customer value problematic.
than the linear approaches.  Integration between the iterations can be an
 We can detect project issues and issue if it is not considered during the
changes earlier. development and project planning.

Agile Model
It is based on iterative and incremental development, where requirements and solutions evolve
through collaboration between cross-functional teams.

The usage
It can be used with any type of project, but it needs more engagement from the customer and
to be interactive. Also, we can use it when the customer needs to have some functional
requirements ready in less than three weeks and the requirements are not clear enough. This
will enable more valuable and workable pieces for software early which also increases
customer satisfaction.
Advantages and Disadvantages

Advantages Disadvantages

 Decrease the time required to avail some  Scalability.


system features.  The ability and collaboration of the
 Face-to-face communication and continuous customer to express user needs.
inputs from customer representatives leave  Documentation is done at later
no space for guesswork. The end result is stages.
high-quality software in the least possible  Reduce the usability of components.
time duration and satisfied customers  Needs special skills for the team.
3. Draw an Extend and Include relationships Use-Case Diagram for online food
ordering system.

A use case diagram is a visual representation of the many operations a system is capable of
carrying out as well as the numerous actors it is capable of interacting with. Use case diagrams
are used to depict a system’s functioning as well as the many players with whom it might come
into contact.

Figure: Food Ordering System Use Case Diagram

Symbols in Use Case Diagram


The main symbols used in use case diagrams are:
Actors: These are represented by stick figures and are used to represent the various roles that
users play when interacting with a system.
Use Cases: Use cases represent the various functionality that a system offers and are
represented by oval shapes.
Lines: Lines are used to represent the communication between actors and use cases.
Use Case: Restaurant Info
Actor(s): Admin and Restaurant Owner
Description:
This feature is used to manage the profile or information of the restaurant.
Successful Completion
New restaurant owners can register their restaurant profile or account using this feature, for
old restaurant owners, this is used to update their restaurant information.
Admin can search, add, update and remove a restaurant data or profile.
Alternative: Restaurant owners can only access their own profile; admin can access all of the
restaurant information or profile.
Precondition: New restaurant for registration, existing restaurant for updating
Post Condition: accepted restaurant registration and updated restaurant information.
Readers are also interested in: Online Food Ordering System ER Diagram

Use Case: Food List


Actor(s): Admin and Restaurant Owner
Description:
This feature is used to view and manage the list of foods reflected in the system.
Successful Completion:

Admin and restaurant owner can search, add, update and remove Food List information.
Alternative: None
Precondition:
The admin and restaurant owner will need to login first to access the Food List management
module.
Post Condition: updated food list.

Use Case: Process Order


Actor(s): Admin, Restaurant Owner, Customer
Description:
This feature is used to process order in the restaurant.
Successful Completion:
Customer can view and process order for the selected foods offered by the restaurant
Restaurant owner can confirm the order processed by the customer.
Admin can search, add, update, and manage the foods for order offered by the restaurant.
Alternative: Customers can only view the foods and process order, while the admin or
restaurant owner will confirm and process the order.
Precondition:
Non-members can only view the food list offered while members needs to login so that they
can process orders for their selected services.
Admin and Restaurant owner will need to login to add, update and manage the list of foods
offered by the restaurant.
Post Condition: updated list of foods

Use Case: Order List


Actor(s): Admin and Restaurant Owner
Description:
This feature is used to view and manage the list of orders made using the system.
Successful Completion:
Admin and restaurant owner can search, add, update and remove Order List information.
Alternative: None
Precondition:
The admin and restaurant owner will need to login first to access the Order List management
module.
Post Condition: updated Order list.

Use Case: Sales Report


Actor(s): Admin and Restaurant Owner
Description:
This feature is used to view and print the sales report of the restaurant.
Successful Completion:
Admin and restaurant owner can view, print and export the sales report of the restaurant.
Alternative: None
Precondition:
Admin and restaurant owner will need to login to access the reports
Post Condition: hard and soft copy of the sales report of the restaurant.

Use Case: Feedback


Actor(s): Admin, Restaurant Owner, Customer
Description:
This feature is used to manage feedback of the restaurant.
Successful Completion:
1. Customer can give feedback for the restaurant using this module.
2. Admin and restaurant owner can collect, view and manage feedback of the restaurant.
Alternative: Customers can only give feedback, while the admin or restaurant owner can collect
or manage feedback.
Precondition:
1. Customers will need to login to the system to be able to give feedback.
2. Admin and Restaurant owner will need to login to collect and manage feedback.
Post Condition: collected feedback

Use Case: Database Backup


Actor(s): Admin
Description:
This feature is used to manage the backup database of the system.
Successful Completion:
1. The admin can add, edit, update database backup information.
Alternative: None
Precondition: Admin will create and connect the backup database.
Post Condition: new backup database.

You might also like