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

Course Code : MS 592

Course Title : System Analysis & Design

Student’s Name : Debbroto Sarker

Student’s ID : 0452230005113017

Program : M.Sc. in CSE

Semester’s Name & Year : Fall 2022

Batch : 29th

Course’s teacher Name & Designation : Rowjatul Zannat Eshita (Assistant Professor)

Department Name : Computer Science and Engineering

University Name : Royal University of Dhaka


1. What is information? Discuss about different categories of
information.

Information:
Information is delineate because the structured, organized, and processed data,
conferred inside context, that makes it relevant and helpful to the one who desires it.
Data suggests that raw facts and figures regarding individuals, places, or the other
issue, that is expressed within the type of numbers letters or symbols.
Information is that the knowledge that is remodeled and classified into an inte lligible
type, which may be utilized in the method of deciding. In short, once knowledge end
up to be purposeful when conversion, it’s referred to as info. It’s one thing that
informs, in essence, it provides a solution to a specific question. It may be obtained
from numerous sources like newspapers, the internet, television, people, books, etc.

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

 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

 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.
Software Development Life Cycle (SDLC):
Software Development is the development of software for distinct purposes. For
software development, there is a specific programming language like Java, Python,
C/C++, etc. The entire process of software development isn’t as simple as its
definition, it’s a complicated process. Accordingly, it requires an efficient approach
from the developer in the form of the Software Development Life Cycle (SDLC).
Proper planning and execution are the key components of a successful software
development process. The entire software development process includes 6 stages.
SDLC specifies the task(s) to be performed at various stages by a software
engineer/developer. It ensures that the end product is able to meet the customer’s
expectations and fits in the overall budget.
SDLC Models:
One of the fundamental notions of SDLC is the model. An SDLC model serves as the
basis of development and should be adapted to the team, project, and product
requirements. There are different models, each of them having its strengths and
weaknesses. In this article, we will get acquainted with the main types of SDLC models,
their specifics, positive and negative sides.
Waterfall model
The waterfall model is the earliest and the simplest of all the SDLC methodologies. The
whole software development process is separated into phases, each phase beginning
only when the previous one is completed. Every stage has its own project plan and
relies on the information from the previous stage. The main SDLC stages of this model
include gathering and analyzing the requirements, system design, implementation,
testing, deployment, and launch. Such a model is widely used in software
development as it is simple to plan and manage. The process is also strictly
documented and the processes and outcomes of each stage are clearly predefined.

When to use the waterfall model?


Each project is individual and the chosen SDLC model needs to correspond to the
various inner and outer requirements. The waterfall model will be most suitable when:
 The project requirements are clear, unambiguous, and detailed
 The product definition is stable
 The tech stack is predefined and not dynamic
 Extensive resources with the necessary expertise are available
 The project is short

Advantages of the waterfall model:


 The processes are handled and completed one by one and there are no
overlaps.
 The key points are easy to define
 Setting the task priorities is effortless
 Easy to plan the development budget and time
 Works great for smaller or middle-size projects where the requirements are quite
transparent

Disadvantages of the waterfall model:


 Not suitable model for complex, long, and object-oriented projects
 The product is integrated at the very process end
 The team can’t identify the possible problems beforehand
 The progress of every stage is hard to measure
 It is not suitable for projects that have changeable requirements
 Adjusting the scope during the lifecycle may cause problems
 High risk and uncertainty amount

Agile model
This software development life cycle model is considered a very practical one. It divides
the project into cycles with short time limits which enables the quick delivery of a
running product. At the end of each cycle, the product is tested. This
SDLC methodology is the most widely used alternative of the waterfall one. Being
a cycle model, it enhances the interactions between different development team
members. It is also highly dependent on the interactions between the development
company and the customer. The agile model is based on the adaptive approach that
doesn’t require thorough planning. The developers adjust the process to the changing
product requirements.
When to use the Agile model?
The Agile model is getting more and more popular because of its adjustability and
adaptively. It is appropriate in such cases:
 The changes need to be implemented
 The project requirements aren’t well-thought
 More attention to risk management is required
 Project requires more freedom in time and actions

Advantages of the Agile model


 Rolling back to the previous stages requires little time and cost.
 Gives the developer team more flexibility
 The iterations are short and clear
 Due to the project flexibility, the risks are minimized
 The first operating product version is released quickly
 Minimal resource requirements
 Enhances the teamwork and cross-training

Disadvantages of the Agile model


 The final product cost is difficult to measure
 New changes may not interact with the developed architecture
 The development team should be expert and customer-oriented
 The final product may be delivered later than the scheduled deadline
 Highly relying on customers, who can drive the project to a bad turn.

V-shaped model
V-shaped SDLC model is an extended waterfall model, in which the testing (verification)
and development (validation) stages go parallelly, the testing stages correspond to
certain development stages. This model has a strict plan and like in a waterfall model,
the next stage doesn’t begin until the previous one is finished. According to this model,
testing is done hierarchically and every stage has a certain deliverable. Errors are easy
to detect at the early stages.
When to use a V-shaped model?
This model emphasizes the testing activities and enhances the probability of delivering
a high-quality and error-free product. V models is the best pick when:
 The project is small and all the requirements are clear
 Qualified software engineers, especially testers are available
 The project requires thorough testing
 Exhaustive technical resources are available

Advantages of V-shaped model


 Each stage has definite outcomes so it is easy to manage
 Phases are completed one by one
 Testing is performed in the early stages
 Clear and easy-to-use
 Project management and tracking results are simple.

Disadvantages of V-shaped model


 Not flexible
 Relatively high risks
 Phase iteration is not supported
 Handling concurrent events is difficult
Spiral model

According to the spiral model, the software development life cycle is divided into
repetitive architecture and prototyping stages. The main problem of this SDLC model is
to find the right moment to move on to the following stage. Every stage encompasses
such phases as: planning, risk analysis, engineering and testing, and evaluation. These
stages are repeated multiple times until the product is ready. For now, it is one of the
most flexible methodologies that gives developers much freedom to create a highly
personalized product. Shifting to the next stage is done even if work on the previous
one is not completed.

When to use the spiral model?


This model is popular for software development because of its enhanced risk reduction
and Here are the cases when the spiral model is the most appropriate:
 The budget is limited and risk evaluation is significant
 The customer is not sure about the project requirements
 The projects with high-risk level
 Projects with complex requirements
 For long-lasting projects according to the possibility of changes
 Customer feedback is essential, especially for new product lines
 The user needs are not defined

Advantages of the Spiral model


 Adjustability to changing requirements
 Enables wide usage of prototypes
 The system is delivered to the users early
 The riskiest parts of SDLC can be managed more thoroughly

Disadvantages of the Spiral Model


 Complex management
 Could be costly for small or low-risk projects due to change implementation
 Spiral many continue indefinitely
 The project end is hard to foresee
 A lot of small stages need exhaustive documentation support

Big Bang model

This model is something out-of-the-box in software development. Its highlight is that


there isn’t any specific process developers have to follow. There is the only stage -
bang, which means starting the project immediately. Even the customer requirements
are not clearly defined according to this model. As a rule, there are one or two
developers working on the project. It may seem chaotic, but it works for small projects
by saving time, energy, and cost on the initial stages.
When to use the Big Bang Model?
This model is highly flexible and gives developers an opportunity to start working on a
project right away. In these cases, the use of the Big Bang model will be the most
beneficial.
 The project is small and practical
 The developer team is small (one or two software engineers)
 The release date is not defined by the customer

Advantages of the Big Bang Model


 No planning required
 Few resources necessary
 Simple and flexible for developers
 Is aimed at fast product delivery

Disadvantages of the Big Bang Model


 Too easy for complicated projects
 High risks of misunderstanding
 Can get very expensive if the requirements are not clear
 The project can be restarted if there are misunderstandings

Conclusion
During the evolution of SDLC, different models emerged from the basic waterfall
methodology to meet various requirements and expectations. There is no all-purpose
model that works well for all projects, conditions, and cost requirements. Each model
has a unique set of actions that ensure the development process’s success.
3. Draw an Extend and Include relationships Use-Case Diagram for online food
ordering system.

Answer:
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. The different use cases that a system can
serve, as well as the connections between use cases, can be identified using use case
diagrams. Use case diagrams can also be used to pinpoint any relationships among use
cases. Last but not least, use case diagrams might aid in locating any potential system
issues. Developers can gain a better understanding of how a system functions and how
users can interact with it by using use case diagrams.
The admin can access the entire core modules of the project. The restaurant owner can
access the restaurant info, food list, process order, order list, sales report and feedback
while the customer can access the process order and feedback modules.

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.
The following are the discussions that describe how a user uses a system to accomplish
a particular goal.
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:

1. 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.
2. 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.
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:

1. 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:

1. Customer can view and process order for the selected foods offered by the
restaurant
2. Restaurant owner can confirm the order processed by the customer.
3. 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:

1. Non-members can only view the food list offered while members needs to login
so that they can process orders for their selected services.
2. 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:
1. 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