You are on page 1of 13

NAME: Muhammad Ali

SEMESTER: 4th

STUDENT ID: BSE-22S-075

Department : Software Engineering

Course coordinator: Ameen Khawaja

Assignment No: 01
Q1: Difference in Website, Webpage, and Mobile App; E-commerce vs. Marketing
Based Web/Mobile App

1. Website vs. Webpage vs. Mobile App:


• Website: A website is a collection of related web pages that are typically
identified by a common domain name. It can contain various types of content and
functionality and is accessible through a web browser.

• Webpage: A webpage is a single document within a website. It is what you


see when you click on a link or type a URL into your browser. Webpages are the
building blocks of a website.

2. Mobile App: A mobile app is a software application designed to run on


mobile devices, such as smartphones and tablets. Unlike websites, apps are
usually downloaded and installed on the device.
3. E-commerce vs. Marketing Based Web/Mobile App:

• E-commerce Web/Mobile App: This focuses on facilitating online


transactions, such as buying and selling goods or services. It includes features like
product listings, shopping carts, and secure payment gateways.

4. Marketing Based Web/Mobile App: This is designed to promote products or


services, build brand awareness, and engage users. It may include features like
content marketing, social media integration, and lead generation forms.

________________________________________

Q2: Steps to Work on a Mobile App (Basic Installation to First Page):

1. Install Development Environment:


• Download and install a suitable integrated development environment (IDE)
like Android Studio or Xcode.
2. Create a New Project:
• Start a new project within the IDE, specifying the app's name, target
platform, and other settings.
3. Design the User Interface:
• Use the IDE's interface builder to design the app's user interface, including
screens and navigation.
4. Code the Functionality:
• Write the code to implement the app's functionality using the chosen
programming language (e.g., Java, Swift).
5. Test the App:
• Use emulators or test devices to ensure the app works as expected.
6. Debugging and Optimization:
• Debug and optimize the code for performance and responsiveness.
7. Build and Deploy:
• Build the app for the target platform and deploy it on app stores or test
devices.
________________________________________
Q3: Most Economic Domain Hosting Provider for Business:

• Economic Hosting Provider: Bluehost is often considered cost-effective for


business hosting, offering reliable services with various plans to suit different
needs.
• Alternative Hosting Providers (at least 5):
1. Site Ground
2. HostGator
3. A2 Hosting
4. In Motion Hosting
5. Dream Host
• Cost Analysis: Compare the costs of these providers for hosting your
site/page for at least 6 months.Q4: Steps to Register Space in Clouds and Other
Hosting Options:

1. Registering Space in Clouds (e.g., AWS, Azure, Google Cloud):

• Sign up for an account on the chosen cloud platform.


• Navigate to the cloud services section.
• Select and configure the desired resources (e.g., virtual machines, storage).
• Check the pricing details for the selected resources.
2. Alternative Hosting Spaces (e.g., Shared Hosting, Dedicated Servers):

• Shared Hosting: Suitable for small websites; resources are shared among
multiple users.
• Dedicated Servers: Entire server dedicated to your website; provides more
control and resources.

3. Cost and Specifications Comparison:

• Compare the costs and specifications of cloud services, shared hosting, and
dedicated servers based on your project requirements.

4. Other Hosting Areas (e.g., Content Delivery Networks - CDNs):

• CDNs like Cloudflare can be used to distribute content globally, enhancing


website performance.

Q:5 Draw the structural diagrams of your own project - including -(class
diagram, activity diagram, sequential diagram , composite diagram object
diagram and the communication diagram?
Q:6 Write short intro of your all screen decided in the project-(5-6
times) in according to the structural diagrams?

Certainly! Below is a short introduction to each screen in your meme collection


mobile application, aligned with the structural diagrams:

Classes CMMS:

1. User: Class managing user authentication (sign up, login).


2. DataCollector: Class handling the collection and management of information
related to deceased individuals.
3. Category: Class governing the categorization of memorial information.
4. DisplayInformation: Class responsible for displaying individual details related to
deceased individuals.

Screens/Functionalities CMMS:

1. Information Collection Screen: Central screen managed by the DataCollector


class allowing users to collect and manage information related to deceased
individuals.
2. Category Selection Screen: Presents various categories related to memorial
services and uses the Category class to display information based on user
preferences.
3. Information Display Screen: Displays individual details related to deceased
individuals using the DisplayInformation class, allowing users to view and navigate
between memorial information.
4. Data Upload Screen: Enables users to contribute information to the collection,
which is facilitated by the DataCollector class.

Additional Functionality for CMMS App:

1. User Sign Up/Login: Users can sign up or log in to access the application's
functionalities.
2. Information Upload for Deceased Individuals: Users can upload information
about deceased individuals, including their location, date of death, and burial
location.
3. Memorial Reminder Notification: The app will send reminder notifications for
the anniversary or memorial events of deceased individuals, providing a way for
users to commemorate their loved ones' passing.

Q7: Main Difference Between ERP and UML Diagram:

ERP (Enterprise Resource Planning):

Definition: ERP is a type of software that organizations use to manage their day-
to-day activities. It integrates various business processes such as planning,
purchasing, inventory, sales, marketing, finance, and human resources into one
unified system.

Focus: ERP focuses on the overall integration and optimization of business


processes within an organization.

Purpose: The primary purpose of ERP is to improve efficiency, streamline


processes, and provide a centralized data source for decision-making.

UML Diagram (Unified Modeling Language):

Definition: UML is a standardized modeling language in the field of software


engineering. It is used to visually represent a system's design through various
diagrams, helping in the understanding, design, and documentation of software
systems.

Focus: UML diagrams are focused on visualizing and documenting the structure
and behavior of a software system.

Purpose: UML diagrams aid in communication among stakeholders,


understanding system architecture, and guiding the implementation process.
Main Difference:

Scope: ERP is a software system that addresses broader business process


management, while UML diagrams are a set of visual tools used for software
design and documentation.
Q8: Different Categories of UML Diagrams and Tools:

1. Structural Diagrams:

Class Diagram: Describes the structure of a system by showing classes, their


attributes, and relationships.

Object Diagram: Represents instances of classes and the relationships between


these instances.

2. Behavioral Diagrams:

Use Case Diagram: Illustrates the interactions between a system and its external
actors.

Sequence Diagram: Displays how objects interact and in what order.

3. Interaction Diagrams:

Activity Diagram: Represents workflows and processes within a system.

Communication Diagram: Shows how objects interact with each other in terms of
sequenced messages.

4. Deployment Diagram:

Deployment Diagram: Visualizes the hardware components where software


components are deployed.

UML Tools:

Lucid chart: A web-based diagramming tool that supports UML diagrams with
collaboration features.
Visual Paradigm: A comprehensive UML tool that supports various diagram types
and offers team collaboration features.
Enterprise Architect: A powerful UML modeling tool with support for software
development, business modeling, and system engineering.

Q9: All Database Languages with Examples:

SQL (Structured Query Language):

Example Queries:

 Select Query: SELECT column1, column2 FROM table WHERE condition;

 Insert Query: INSERT INTO table (column1, column2) VALUES (value1,


value2);

 Update Query: UPDATE table SET column1 = value1 WHERE condition;

NoSQL (Not Only SQL):

Example Queries:

 Insert Document: db.collection.insert({ field1: value1, field2: value2 });

 Query Document: db.collection.find({ field: value });

 Update Document: db.collection.update({ field: value }, { $set:


{ fieldToUpdate: newValue } });

PL/SQL (Procedural Language/SQL):

Example Queries:

 Procedure: CREATE PROCEDURE procedure_name AS ...

 Function: CREATE FUNCTION function_name RETURN data_type AS ...


 Trigger: CREATE TRIGGER trigger_name BEFORE INSERT ON table FOR EACH
ROW .
Q10: Scenario - Basic Structure, Structural Diagram, Database Structure,
Relational Diagram, and SQL Commands:

Scenario: Design a simple library management system.

1. Basic Structure:

Users interact with a system to borrow and return books.


Basic entities: User, Book, Borrowing Record.

 St
ructural Diagram (Class Diagram):

2. Database Structure (Table Definitions):

 Users Table:

CREATE TABLE Users (


userId INT PRIMARY KEY,
userName VARCHAR(255),
borrowedBooks INT
);
 Books Table:

CREATE TABLE Books (


bookId INT PRIMARY KEY,
title VARCHAR(255),
author VARCHAR(255)
);

 Borrowings Table:

CREATE TABLE Borrowings (


borrowingId INT PRIMARY KEY,
userId INT,
bookId INT,
borrowDate DATE,
returnDate DATE
);

 Relational Diagram:

3. SQL Commands (for creating the structure):

 Users Table:

INSERT INTO Users (userId, userName, borrowedBooks)


VALUES (1, 'John Doe', 0);

 Books Table:

INSERT INTO Books (bookId, title, author)


VALUES (1, 'Introduction to SQL', 'Jane Smith');

 Borrowings Table:

INSERT INTO Borrowings (borrowingId, userId, bookId, borrowDate, returnDate)


VALUES (1, 1, 1, '2023-01-01', NULL);

This scenario demonstrates the transition from a basic structure to structural,


database, relational diagrams, and SQL commands for creating the system.
Adjustments may be needed based on specific requirements and database
systems.

Cloud Space:

Cloud space refers to the virtual storage and computing resources provided by
cloud service providers. It offers scalability, flexibility, and accessibility. Key points
include:

 Scalability: Easily scale resources up or down based on demand.

 Flexibility: Choose from various services (IaaS, PaaS, SaaS) based on needs.

 Accessibility: Access data and applications from anywhere with an internet


connection.

 Cost-Efficiency: Pay for the resources you use, avoiding upfront


infrastructure costs.

 Security: Cloud providers implement robust security measures to protect


data.
 Popular Providers: AWS, Azure, Google Cloud, and others offer diverse
cloud services.

You might also like