0% found this document useful (0 votes)
87 views47 pages

Final SE File PDF

This document provides details about a software engineering practical project on documenting software requirement engineering. It includes: 1. An introduction to the "Common ISP Portal" project, which allows mobile users to recharge accounts from multiple providers in one place. 2. Descriptions of the main modules: Admin manages users and balances, Service Providers process recharges, and Users can recharge individual lines or act as shopkeepers. 3. An abstract stating the project gives information on mobile providers and allows recharging any provider in one system.

Uploaded by

Mohammad
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
87 views47 pages

Final SE File PDF

This document provides details about a software engineering practical project on documenting software requirement engineering. It includes: 1. An introduction to the "Common ISP Portal" project, which allows mobile users to recharge accounts from multiple providers in one place. 2. Descriptions of the main modules: Admin manages users and balances, Service Providers process recharges, and Users can recharge individual lines or act as shopkeepers. 3. An abstract stating the project gives information on mobile providers and allows recharging any provider in one system.

Uploaded by

Mohammad
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 47

200410116038 TY IT-1 (Batch A)

INDEX

Practical
Date Practical Title Page Grade Sign
No.
1. Introduction to Software Engineering. Study of
different software engineering models.
2. Documentation of Software Requirement
Engineering.
3. Documentation of System Design using procedural
approach

(DFD, ER-Diagram).
4. Documentation of System Design using Object
Oriented approach (UML).
5. Documentation of Data Dictionary.
6. Documentation of System Design (form design).
7. Study of different software cost estimation models.
8. Software Development tools and techniques (CASE).

9. Study of Software testing using testing tools.


10. CASE STUDY: study of software quality assurance
(SQA)
Standards.
11. Study of DevOps.
BEYOND SYLLABUS
12. Explore the Microsoft Project tool and explain the
characteristics and scheduling with GANTT chart and
PERT Chart.

Software Engineering (3161605) SVIT Vasad


200410116038 TY IT-1 (Batch A)

PRACTICAL – 2
Aim: Documentation of Software Requirement Engineering.

Solution:

SRS document of Common ISP portal

University: Gujarat Technological University (GTU)

Department: Information Technology


Supervisor: Prof. Amit Chaudhuri

Team Members:

Enrollment no. Name E-mail


200410116038 Jay Lakhani jay.200410116038@gmail.com
200410116029 Pushti Bhadja pushti. 200410116029@gmail.com
200410116034 Divya Patel divya.20041006034@gmail.com
200410116013 Nihal Parekh nihal.200410116013@gmail.com

Software Engineering (3161605) SVIT Vasad


200410116038 TY IT-1 (Batch A)

 Table of Contents:

1. Abstract
2. Introduction
3. Problem Description
4. Techniques & Analysis

A) HTML

B) CSS

C) Java Script

D) PHP

E) My SQL server

5. System Specifications

6. System Interface

7. System Testing and Implementation

8. Conclusion

Software Engineering (3161605) SVIT Vasad


200410116038 TY IT-1 (Batch A)

1. Abstract

The Project “COMMON ISP PORTAL” gives us the information about all the
common mobile service providers. This application provides us the complete information in a
service provider wise. The major advantage of this proposed system is to have the recharging
facility of any service provider under one roof. It contains 3 major modules that are Admin,
User and Visitor. Admin module contains all the details of the users like when it was created
and what all the transactions done by the user, detailed information of the user can be accessed
or can be manipulated by the administrator. User module consists of how to create the user and
how to access the service provider and any time he can have the complete information of his
account, when he had updated his balance and how the balance has been utilized that can be
viewed in the form of reports. Visitor is the module where he can visit the proposed system and
can have the complete information of all the service providers.

Software Engineering (3161605) SVIT Vasad


200410116038 TY IT-1 (Batch A)

2. INTRODUCTION TO PROJECT
There are many service providers for the pre-paid mobile users, which can be recharged
frequently. This proposed application helps the mobile user to recharge his mobile of any service
provider under one roof.

The Project ‘COMMON ISP PORTAL’ gives us the information about all the mobile
service providers. This application provides us the complete information in a service provider
wise. Suppose, any airtel customer wants to have the information of all the schemes and services
of airtel he/she can have the information and according to his convenience he can recharge the
mobile from the same application. The major advantage of this proposed systemis to have the
recharging facility of any service provider under one roof. It is going to contain 3 major modules
that are Admin, User and Visitor. Admin module contains all the details of the users like when
it was created and what all the transactions done by the user, detailed information of the user can
be accessed or can be manipulated by the administrator. Also there is complaint section to solve
any kind of problems. User module consists of how to create the user and how to access the
service providers and any time he can have the complete information of his account, when he
had updated his balance and how the balance has been utilized that can be viewed in the form of
reports. Visitoris the module where he can visit the proposed system and can have the complete
information of all the service providers.

INTRODUCTION TO MODULES
There are 4 modules in this project. They are briefed as follows

 Service Provider
 Admin
 User
 Individual
 Shop Keeper
 Visitor

Software Engineering (3161605) SVIT Vasad


200410116038 TY IT-1 (Batch A)

Service Provider:

Service Provider is the one who is nothing but the mobile service provider like all the
companies who are giving the mobile connections come under this module. The functionality
of this module is to make the mobile recharging of their company basing on the availability of
balancein the admin account. Request comes from the user and it is going to be verified at the
admin for the availability of balance and then the request is forwarded to the service provided
to make the mobile recharge. After receiving the request service provider is going to check the
available balance and then they go for processing the request.

Admin:

Admin is the one who monitors all users and user transactions. Admin also monitors all the
Service Providers. Admin has to maintain the balances with Service Providers, monitors all the
user accounts, and amounts paid by the user and amounts paid to Service Providers. When the
request given by the user admin checks the available balance in the user account then request is
forwarded to the Service Provider from there user request gets processed. Admin haves the
complete information related to user and all the information related to the schemes and other
information of different recharge coupons provided by the Service Providers. All the data is
maintained at the Admin level. Admin is having the rights to restrict any user.

User:

There are 2 categories in the user Module

 Individual
 Shopkeeper
 Individual

Software Engineering (3161605) SVIT Vasad


200410116038 TY IT-1 (Batch A)

Any person who wants to utilize the services of COMMON ISP PORTAL at any time
from any where they should get registered in this application. After getting registered user can
recharge the mobile at any time and from any where. For this user has to furnish the required
information and get registered. Individual user is able to make recharge to his particular mobile
only. He can have the complete information of all the service providers recharging coupons.

Shop Keeper:
The retailers now who are providing the recharge to the end users become the user as Shop
Keeper. Shop Keeper can be registered as a user and make the recharges to any number of
mobiles of any kind of Service Provider. This particular user can have the margin of some amount
in this recharge process.

Visitor:

Visitor is the one who visits the ONLINE MOBILE RECHARGE application and have
the complete information related to the Service Providers and can make the mobile recharge by
entering the bank details or by giving the credit card details.

Software Engineering (3161605) SVIT Vasad


200410116038 TY IT-1 (Batch A)

3. Problem Description

The following are the drawbacks of the existing System.

Time Delay

User has to access or utilize all services offered by all the service providers. Since all the
services are offered by different organizations it takes lot of time to make recharges of each and
every organization.

Redundancy

There are different recharging coupons available for each and every service provider but the
problem is shop keeper has to maintain all the things and has to be given to the customer what they
are looking for. Shop Keeper should have the knowledge of all the coupons available. It is very
difficult for any one to maintain these many numbers of coupons.

Accuracy

Since there is much service providers and so many recharge coupons of each and every service
providers there is a problem for the shop keeper to maintain all the coupons and the problem with
the individual user that they have to make the manual recharging facility and it ultimately becomes
a headache to all kind of users.

Software Engineering (3161605) SVIT Vasad


200410116038 TY IT-1 (Batch A)

4. TECHNOLOGY OVERVIEW

A) HTML (Hypertext Markup Language):


HTML is the set of markup symbols or codes inserted in a file intended for display on a World
Wide Web browser page. The markup tells the Web browser how to display a Web page's words
and images for the user.

Advantages:

 HTML is easy to use and understand.


 All browser support HTML
 HTML is free
 Most development tools support HTML.
 HTML is most search engine friendly.

B) Cascading Style Sheets (CSS):


CSS is a style sheet language used for describing the presentation of a documentwritten in a
markup language.

Advantages:

1- Easier to maintain andupdate.

2- Greater consistencyin design.

3- More formatting options.


4- Greater accessibility.

C) JavaScript
The language was first implemented by Netscape Communications Corp. in Netscape
Navigator 2 beta (1995). JavaScript is different from the Java language (developed in the

1990s at Su

Software Engineering (3161605) SVIT Vasad


200410116038 TY IT-1 (Batch A)

Microsystems). However, the two languages can interoperate well. Client- side JavaScript
programs, or scripts, can be embedded directly in HTML source of Web pages.
It is a programming language used to make web pages interactive. It is what gives a page life,
the interactive elements and animation that engage a user. If you've ever used asearch box on
a home page, checked a live baseball score on a news site or watched a video, JavaScript is
probably running through it.

D) PHP (Hypertext Preprocessor):

PHP is a script language and interpreter that is freely available and used primarily on Linux Web
servers. PHP, originally derived from Personal Home Page Tools, PHP is free and offered under an
open source license.

Advantages:
1- FREE OF COST:
PHP is open source.
2- PLATFORM INDEPENDENT:
It can be run on all major operating systems like Linux, UNIX, Mac OS andWindows.
3- SUPPORTS ALL MAJOR WEB SERVERS:
It supports all major web servers like Apache, Microsoft IIS, Netscape, personal webserver, I
Planetserver, etc.
4- SECURE.
5- PROVEN AND TRUSTED

Software Engineering (3161605) SVIT Vasad


200410116038 TY IT-1 (Batch A)

E) INTRODUCTION TO SQL SERVER 2005:

DATABASE:

A database management, or DBMS, gives the user access to their data and helps them transform
the data into information. Such database management systems include dBase, paradox, IMS, and
SQL. These systems allow users to create, update and extract information from their database.

A database is a structured collection of data. Data refers to the characteristics of people, things
and events. SQL stores each data item in its own fields. In SQL, the fields relating to a particular
person, thing or event are bundled together to form a single complete unit of data, called a record
(it can also be referred to as raw or an occurrence). Each record is made up of a number of fields.
No two fields in a record can have the same field name.

During a SQL Database design project, the analysis of your business needs identifies all the
fields or attributes of interest. If your business needs change over time, you define any additional
fields or change the definition of existing fields.

Software Engineering (3161605) SVIT Vasad


200410116038 TY IT-1 (Batch A)

5 SYSTEM SPECIFICATIONS

Hardware Requirements

Processor : Intel Pentium III or more

Ram : 256 MB or more

Cache : 512 KB

Hard disk : 16 GB hard disk recommended for primary partition

Software Requirements

Operating system : Windows 2000 /XP or later

Front End Software : ASP.NET (C# .NET)

Back End Software : SQL – SERVER

Servers : IIS Server

Software Engineering (3161605) SVIT Vasad


200410116038 TY IT-1 (Batch A)

6) System Interface

Interfaces:

Administrator:

The admin is able to make the following actions:

 Show all accounts information’s


 Show all carriers information’s.
 Add, delete and modify account.
 Add, delete and modify carriers.

Admin login:

Software Engineering (3161605) SVIT Vasad


200410116038 TY IT-1 (Batch A)

Numbers:

All Carriers’ information of customers in each telecommunication company

Software Engineering (3161605) SVIT Vasad


200410116038 TY IT-1 (Batch A)

The payment transaction:

The customer chooses the amount of balance and confirm bank authentication to complete transaction

Software Engineering (3161605) SVIT Vasad


200410116038 TY IT-1 (Batch A)

Carrier and number for android:

Choosing Telecommunication Company and entering the number you want to recharge.

Software Engineering (3161605) SVIT Vasad


200410116038 TY IT-1 (Batch A)

Choosing amount in android:

Software Engineering (3161605) SVIT Vasad


200410116038 TY IT-1 (Batch A)

Payment Page:

Software Engineering (3161605) SVIT Vasad


200410116038 TY IT-1 (Batch A)

7) SYSTEM TESTING & IMPLEMENTATION

SYSTEM TESTING

During system testing the system is used experimentally to ensure that thesoftware
does not fail, i.e., it will run according to its specifications and in the way the users expect.

Testing is the major quality control measure employed for software development.
Itsbasic function is to detect errors in the software. During requirement analysis and
design, the output is a document that is usually textual and non-executable. After Coding
phase, computer programs are available that can be executed for testing purpose. This
implies that, testing not only has to uncover errors introduced during coding phases. Thus,
the goal of testing is to cover requirement, design or coding errors in the program.

The starting point of testing is Unit testing. In this a module is tested separately
and is often performed by the code itself simultaneously with the coding of the module.
The purpose is to exercise the different parts of the module code to detect coding errors.
After this, modules are gradually integrated into subsystems, which are then integrated
themselves too eventually from the entire system. During integration of module,
Integration Testing is performed. The goal of this is to detect design errors, while focusing
on testing the interconnection between modules.

After the system is put together, System Testing is performed. Here the
system is tested against the system requirements to observe, whether all requirements
are satisfied and the system performs as specified by the requirement specification.
Finally, Acceptance testing is performed to demonstrate the operation of the system to
the client, onthe real environment with the client’s live data.

Software Engineering (3161605) SVIT Vasad


200410116038 TY IT-1 (Batch A)

8. Conclusion:

COMMON ISP PORTAL project provides all the information related to all the Service
Providers and also gives the facility of making the recharging for all the Service Providers
under one application at any time and from anywhere. It is beneficial for both individual
userand also the people who are into business like the shop keepers. It also provides the
complete information of all the recharge coupons of different Service Providers to all users.
Also use can register complaints so it is useful for all users to connect between providers .

Software Engineering (3161605) SVIT Vasad


200410116038 TY IT-1 (Batch A)

PRACTICAL – 3
Aim: Documentation of System Design using procedural approach (DFD, ER-Diagram).

Solution:

DFD-Data Flow Diagram for Common ISP portal

Level-0

Software Engineering (3161605) SVIT Vasad


200410116038 TY IT-1 (Batch A)

Level-1

Software Engineering (3161605) SVIT Vasad


200410116038 TY IT-1 (Batch A)

Level-2

Software Engineering (3161605) SVIT Vasad


200410116038 TY IT-1 (Batch A)

PRACTICAL – 4
Aim: Documentation of System Design using Object Oriented approach (UML).

Solution:

1) Use case diagram

Software Engineering (3161605) SVIT Vasad


200410116038 TY IT-1 (Batch A)

2) Class diagram

Software Engineering (3161605) SVIT Vasad


200410116038 TY IT-1 (Batch A)

3) Sequence diagram

Software Engineering (3161605) SVIT Vasad


200410116038 TY IT-1 (Batch A)

4) Swimlane diagram

Software Engineering (3161605) SVIT Vasad


200410116038 TY IT-1 (Batch A)

5) Activity diagram

Software Engineering (3161605) SVIT Vasad


200410116038 TY IT-1 (Batch A)

6) State diagram

Software Engineering (3161605) SVIT Vasad


200410116038 TY IT-1 (Batch A)

PRACTICAL – 5
Aim: Documentation of Data Dictionary.

Solution: This will be the data dictionary for our project:

Field Name Data Type Field


Size

User Table:

User ID Integer 255


Username String 50
Password String 100
First Name String 50
Last Name String 50
Email String 255
Phone Number String 20
Address String 255
Account Balance Decimal or Float 10,2

Service Provider Table:

Provider ID String 255


Provider Name String 50
Schemes String 255
Services String 255
Contact Information String 255

Transaction Table:

Transaction ID Unique identifier (Integer or String) 255


User ID Unique identifier (Integer or String) 255
Provider ID Unique identifier (Integer or String) 255
Recharge Amount Decimal or Float 10,2
Date and Time Date and Time Data Type datetime

Complaint Table:

Complaint ID Unique identifier (Integer or String) 255


User ID Unique identifier (Integer or String) 255

Software Engineering (3161605) SVIT Vasad


200410116038 TY IT-1 (Batch A)

Provider ID Unique identifier (Integer or String) 255


Description String 255
Status String 50

Admin Table:

Admin ID Unique identifier (Integer or String) 255


Username String 50
Password String 100
Privileges String 255

Software Engineering (3161605) SVIT Vasad


200410116038 TY IT-1 (Batch A)

PRACTICAL – 6
Aim: Documentation of System Design (form design).

Solution: System Design for Form Design:

1. Purpose:
The purpose of the form design in the "COMMON ISP PORTAL" system is to provide an intuitive and user-
friendly interface for capturing and managing user information, recharge transactions, complaints, and administrative
tasks. The form design should prioritize ease of use, clarity, and efficient data entry and retrieval.

2. User Roles: The form design should cater to three user roles: Admin, User, and Visitor. Each role will have
specific forms and functionalities tailored to their needs.
3. Admin Forms:
a. User Management Form:
o Add User: Allows the admin to add a new user with relevant information.
o Edit User: Enables the admin to modify user details such as name, contact information, and account
balance.
o Delete User: Allows the admin to delete a user account from the system.

b. Transaction Management Form:


o Add Transaction: Enables the admin to record recharge transactions, including user, service provider,
amount, and date/time.
o Edit Transaction: Allows the admin to modify transaction details such as user, service provider, and
amount.
o Delete Transaction: Enables the admin to delete a recharge transaction from the system.

c. Complaint Management Form:


o View Complaints: Displays a list of complaints with their details, such as user, service provider,
description, and Status .
o Resolve Complaint: Allows the admin to update the status of a complaint to "resolved" and add any
relevant notes.

4. User Forms:
a. User Account Details Form:
o View Account Balance: Displays the user's account balance and transaction history.
o Edit Account Details: Enables the user to update their personal information such as name, contact details,
and address.
b. Recharge Form:
o Select Service Provider: Allows the user to choose the desired service provider for recharge.
o Enter Recharge Amount: Enables the user to specify the amount to be recharged.
o Submit Recharge: Submits the recharge request and records the transaction in the system.

Software Engineering (3161605) SVIT Vasad


200410116038 TY IT-1 (Batch A)

5. Visitor Forms:
a. Service Provider Information Form:
o View Providers: Displays a list of all service providers with their details, including schemes, services, and
contact information.

Software Engineering (3161605) SVIT Vasad


200410116038 TY IT-1 (Batch A)

PRACTICAL – 8
Aim: Software Development tools and techniques (CASE).

Solution:

o CASE stands for Computer Aided Software Engineering. It means, development and
maintenance of software projectswith help of various automated software tools.

o CASE Tools

o CASE tools are set of software application programs, which areused to automate
SDLC activities. CASE tools are used by software project managers, analysts and engineers to
develop software system.

o There are number of CASE tools available to simplify various stages of Software
Development Life Cycle such as Analysis tools, Design tools, Project management tools,
Database Management tools, Documentation tools are to name a few.

o Use of CASE tools accelerates the development of project toproduce desired result and
helps to uncover flaws before moving ahead with next stage in software development.

o Components of CASE Tools

o CASE tools can be broadly divided into the following partsbased on their use at a
particular SDLC stage:

o Central Repository - Central repository is a central place of storage where product


specifications, requirement documents, related reports and diagrams, other useful
information regarding management is stored. It also serves as data dictionary.

o Upper Case Tools - Upper CASE tools are used in planning, analysis and designstages
of SDLC.
o Lower Case Tools - Lower CASE tools are used in implementation, testing and
maintenane

o Case Tool Types

Software Engineering (3161605) SVIT Vasad


200410116038 TY IT-1 (Batch A)

Now we briefly go through various CASE tools:

• Diagram tools
These tools are used to represent system components, data and control flow among various
software components and system structure in a graphical form. For example, Flow Chart Maker
tool forcreating state-of-the-art flowcharts.

 Process Modelling Tools


Process modelling is method to create software process model, which is used to develop the software.
Process modelling tools helpthe managers to choose a process model or modify it as per the
requirement of software product. For example, EPF Composer

• Project Management Tools


These tools are used for project planning, cost and effort estimation, project scheduling and
resource planning. Managers have to strictly comply project execution withevery mentioned stepin
software project management. Project management tools help in storing and sharing project
information in real-time throughout the organization. For example, Creative Pro Office, Trac
Project, Basecamp.

• Documentation Tools
Documentation in a software project starts prior to the softwareprocess, goes
throughout all phases of SDLC and after the completion of the project.
Documentation tools generate documents for technical users and end users. Technical users are
mostly in-house professionals of the development team who refer to system manual, reference
manual,training manual, installation manuals etc. The end user documents describe the functioning
and how-to of the system such as user manual. For example, Doxygen, DrExplain, Adobe
RoboHelp for documentation.

 Analysis Tools
These tools help to gather requirements, automatically check for anyinconsistency, inaccuracyin
the diagrams, data redundancies or erroneous omissions. For example, Accept 360, Accompa, Case
Complete for requirement analysis, Visible Analyst for total analysis.

Software Engineering (3161605) SVIT Vasad


200410116038 TY IT-1 (Batch A)

• Design Tools
These tools help software designers to design the block structure of the software, which mayfurther
be broken down in smaller modulesusing refinement techniques. These tools provide detailing of
each module and interconnections among modules. For example, Animated Software Design
• Change Control Tools
These tools are considered as a part of configuration management tools. They deal with changes
made to the software after its baselineis fixed or when the software is first released. CASE tools
automate change tracking, file management, code management and more. It also helps in enforcing
change policy of the organization.

• Programming Tools
These tools consist of programming environments like IDE (Integrated Development
Environment), in-built modules library and simulation tools. These tools provide
comprehensive aid in building software product and include features for simulation and testing.
Forexample, Scope to search code in C, Eclipse.

• Prototyping Tools
Software prototype is simulated version of the intended software product. Prototype provides initial
look and feel of the product andsimulates few aspects of actual product.
Prototyping CASE tools essentially come with graphical libraries. Theycan create hardware
independent user interfaces and design. These tools help us to build rapid prototypes based onexisting
information.
In addition, they provide simulation of software prototype. Forexample, Serena prototypecomposer, Mock
up Builder.

• Web Development Tools


These tools assist in designing web pages with all allied elements likeforms, text, script, graphic
and so on. Web tools also provide live preview of what is being developed and how will it look
after completion. For example, Fontello, Adobe Edge Inspect, Foundation 3, Brackets.

• Quality Assurance Tools


Quality assurance in a software organization is monitoring the engineering process and methods
adopted to develop the software product in order to ensure conformance of quality as per

Software Engineering (3161605) SVIT Vasad


200410116038 TY IT-1 (Batch A)

organization standards. QA tools consist of configuration and changecontrol tools and software
testing tools. For example, Soap Test, AppsWatch, JMeter.

• Maintenance Tools
Software maintenance includes modifications in the software product after it is delivered.
Automatic logging and error reportingtechniques, automatic error ticket generation and root cause
Analysis are few CASE tools, which help software organization in maintenance phase of SDLC. For
example, Bugzilla for defect tracking, HP Quality Cen

Software Engineering (3161605) SVIT Vasad


200410116038 TY IT-1 (Batch A)

PRACTICAL – 10
Aim: CASE STUDY: Study of Software Quality Assurance (SQA) Standards.

Solution:

SQA Activities:
Prepare an SQA plan for a project:
 The plan is developed during project planning and is reviewedby all interested parties.
Quality assurance activities performed by the software engineering team and the SQA group
are governed bythe plan.
 The plan identifies

 Evaluations to be performed
 Audits and reviews to be performed
 Standards that are applicable to the project
 Procedures for error reporting and tracking
 Documents to be produced by the SQA group
 Amount of feedback provided to the software project team

 Participates in the development of the project’s softwareprocess description.


The software team selects a process for the work to be performed. The SQA group reviews the process
description for compliance withorganizational policy, internal software standards, externally imposed
standards (e.g., ISO-9001), and other parts of the softwareproject plan.
Reviews software engineering activities to verify compliance withthe defined software process.
The SQA group identifies, documents, and tracks deviations from theprocess and verifies that
corrections have been made.
Audits designated software work products to verify compliance withthose defined as part of the
software process.

 The SQA group reviews selected work products; identifies, documents, and tracks
deviations; verifies that corrections have been made; and periodically reports the
results of its work to theproject manager.
 Ensures that deviations in software work and work products aredocumented and
handled according to a documented procedure.

Software Engineering (3161605) SVIT Vasad


200410116038 TY IT-1 (Batch A)

 Deviations may be encountered in the project plan, processdescription, applicable


standards, or technical work products.

 Records any noncompliance and reports to senior management.

 Noncompliance items are tracked until they are resolved.

ISO
 ISO (International Standards Organization) is a group or consortiumof 63 countries
established to plan and fosters standardization.

 ISO declared its 9000 series of standards in 1987. It serves as areference for the
contract between independent parties.
 The ISO 9000 standard determines the guidelines for maintaining aquality system.
 The ISO standard mainly addresses operational methods andorganizational
methods such as responsibilities, reporting, etc.
 ISO 9000 defines a set of guidelines for the production process andis not directly
concerned about the product itself.
 Types of ISO 9000 Quality Standards:

The ISO 9000 series of standards is based on the assumption that if aproper stage is followed for
production, then good quality products are bound to follow automatically. The types of industries to
which the various ISO standards apply are as follows.

1. ISO 9001: This standard applies to the organizations engaged indesign, development,
production, and servicing of goods. This is the standard that applies to most software development
organizations.
2. ISO 9002: This standard applies to those organizations which donot design products but are
only involved in the production. Examples of these category industries contain steel and car
manufacturing industries that buy the product and plants designs from external sources and are
engaged in only manufacturing those products. Therefore, ISO 9002 does not apply to software
development organizations.
3. ISO 9003: This standard applies to organizations that are involved only in the
installation and testing of the products. Forexample, Gas companies.

Software Engineering (3161605) SVIT Vasad


200410116038 TY IT-1 (Batch A)

Capability maturity model (CMM)


 CMM was developed by the Software Engineering Institute (SEI) atCarnegie Mellon
University in 1987.
 It is not a software process model. It is a framework which is used to analyze the
approach and techniques followed by anyorganization to develop a software product.
 It also provides guidelines to further enhance the maturity ofthose software
products.
 It is based on profound feedback and development practicesadopted by the most
successful organizations worldwide.
 This model describes a strategy that should be followed bymoving through 5
different levels.

Each level of maturity shows a process capability level. All the levels except level-1
arefurther described by Key Process Areas (KPA’s).

• Key Process Areas (KPA’s):


Each of these KPA’s defines the basic requirements that should be met by a softwareprocess in
order to satisfy the KPA and achieve that level of maturity.
Conceptually, key process areas form the basis for managementcontrol of the software project
and establish a
context in which technical methods are applied, work products like models, documents, data, reports,
etc. are produced, milestones areestablished, quality is ensured and change is properlymanaged.

• The 5 levels of CMM are as follows:


Level-1: Initial
 No KPA’s defined.
 Processes followed are ad-hoc and immature and are not welldefined.
 Unstable environment for software development.
 No basis for predicting product quality, time for completion,etc.

Level-2: Repeatable

Software Engineering (3161605) SVIT Vasad


200410116038 TY IT-1 (Batch A)

 Focuses on establishing basic project management policies.

 Experience with earlier projects is used for managing newsimilar nature


projects.
 KPA’s:

 Project Planning- It includes defining resources required, goals,constraints, etc. for the
project. It presents a detailed plan to be followed systematically for successful completion
of a good qualitysoftware.

 Configuration Management- The focus is on maintaining the performance of the


software product, including all its components,for the entire lifecycle.

Requirements Management- It includes the management of customer reviews and feedback which result in some
changes in therequirement set. It also consists of accommodation of those modified requirements.

 Subcontract Management- It focuses on the effective management of qualified software


contractors i.e., it manages theparts of the software which are developedby third parties.

 Software Quality Assurance- It guarantees a good quality software product by


following certain rules and quality standardguidelines while development.

Level-3: Defined
 At this level, documentation of the standard guidelines andprocedurestakesplace.

 It is a well-defined integrated set of project specific softwareengineering and


management processes.

Level-4: Management
 At this stage, quantitative quality goals are set for the organization for software
products as well as software processes.

 The measurements made help the organization to predict theproduct and process quality
within some limits defined quantitatively.


Software Engineering (3161605) SVIT Vasad


200410116038 TY IT-1 (Batch A)

 KPA’s:

 Software Quality Management- It includes the establishment ofplans and strategies to


develop a quantitative analysis and understanding of the product’s quality.

 Quantitative Management- It focuses on controlling the projectperformance in a


quantitative manner.

Level-5: Optimizing
 This is the highest level of process maturity in CMM and focuses on continuous process
improvement in the organizationusing quantitative feedback.

 Use of new tools, techniques and evaluation of softwareprocesses is done to prevent


recurrence of known defects.
 KPA’s:

Process Change Management- Its focus is on the continuousimprovement of organization’s software processes
to improve productivity, quality and cycle time for the software product.
Technology Change Management- It consists of identificationand use of new
technologies to improve product quality and decrease the product development time.

 Defect Prevention- It focuses on identification of causes of defects and to prevent them


from recurring in future projects by improving project defined process.

 Six-Sigma Standards:
 Six Sigma is the process of producing high and improvedquality output.
 This can be done in two phases – identification and elimination.

 The cause of defects is identified, and appropriate eliminationis done which reduces
variation in whole processe.

Software Engineering (3161605) SVIT Vasad


200410116038 TY IT-1 (Batch A)

PRACTICAL – 11
Aim: Study of DevOps.

Solution:

What is DevOps?
 The term DevOps is a combination of two words namely Development and Operations.
DevOps is a practice that allows a single team to manage the entire application
development life cycle,that is, development, testing, deployment, andmonitoring.
 The goal of DevOps is to decrease the duration of the system’sdevelopment life cycle while
delivering features, fixes, and updates frequently in close synchronization with business
objectives.
 DevOps is a software development approach with the help of which you can develop superior
quality software quickly and with more reliability. It consists of various stages such as
continuous development, continuous integration, continuous testing, continuousdeployment,
and continuous monitoring.

Who is a DevOps Engineer?


 DevOps Engineer is somebody who understands the Software Development Lifecycle and has
the outright understanding of variousautomation tools for developing digital pipelines (CI/
CD pipelines).
 DevOps Engineer works with developers and the IT staff to oversee the code releases. They
are either developers who get interested in deployment and network operations or sysadmins
who have a passion for scripting and coding and move into the development sidewhere they
can improve the planning of test and deployment.

Docker
Docker has gained immense popularity in this fast- growing IT world. Organizations are continuously
adopting it in theirproduction environment.
 History Before containerization

 Reasons to use containers

 What is Docker?

 Docker file, Images & Containers

Software Engineering (3161605) SVIT Vasad


200410116038 TY IT-1 (Batch A)

 Docker Compose & Docker Swarm

 Hands-On

History Before Containerization


Before containerization came into the picture, the leading way to isolate, organize applications and
their dependencies was to place each and every application in its own virtual machine.
These machines run multiple applications on the same physical hardware,and this process isnothing but
Virtualization.
But virtualization had few drawbacks such as the virtual machines were bulky in size, running
multiple virtual machines lead to unstableperformance, boot up process would usually take a long
time and VM’s would not solve the problems like portability, software updates, or continuous
integration and continuous delivery.
These drawbacks led to the emergence of a new technique calledContainerization. Now let metell you
about Containerization.

Containerization
Containerization is a type of Virtualization which brings virtualizationto the operating systemlevel.
While Virtualization brings abstraction to the hardware, Containerization brings abstraction tothe
operating system.

Reasons to use Containers


Following are the reasons to use containers:

 Containers have no guest OS and use the host’s operating system. So, they share
relevant libraries & resources as and whenneeded.

 Processing and execution of applications are very fast since applications specific
binaries and libraries of containers run on thehost kernel.
 Booting up a container takes only a fraction of a second, and alsocontainers are
lightweight and faster than Virtual Machines.

What is Docker?
Docker is a platform which packages an application and all its dependencies together in the
form of containers. This containerization aspect ensures that the application works in
anyenvironment.

Software Engineering (3161605) SVIT Vasad


200410116038 TY IT-1 (Batch A)

As you can see in the diagram, each application runs on separatecontainers and has its own set of
dependencies & libraries. This makes sure that each application is independent of other applications,
giving developers surety that they can buildapplications that will not interfere with oneanother.
So, a developer can build a container having different applications installed on it and give it to
the QA team. Then the QA team wouldonly need to run the container to replicate the
developer’s environment.

Docker file, Images & Containers


Docker file, Docker Images & Docker Containers are three importantterms that you need to understand
while using Docker.
As you can see in the above diagram when the Docker file is built, it becomes a Docker Image
and when we run the Docker Image then itfinally becomes a Docker Container.
Refer below to understand all the three terms.
Docker file: A Docker file is a text document which contains all the commands that a user can call on
the command line to assemble an image. So, Docker can build images automatically byreading the
instructions from a Docker file. You can use docker build to create anautomated build to execute
several command-line instructions in succession.
Docker Image: In layman terms, Docker Image can be compared to atemplate which is usedto
create Docker Containers. So, these read- only templates are the building blocks of a Container. You
can use docker run to run the image and create a container.
Docker Images are stored in the Docker Registry. It can be either a user’s local repository or a
public repository like a Docker Hub whichallows multiple users to collaborate in building an
application.
Docker Container: It is a running instance of a Docker Image as they hold the entire package needed
to run the application. So, these are basically the ready applications created from Docker Images which
isthe ultimate utility of Docker.

Docker Compose & Docker Swarm


Docker Compose is a YAML file which contains details about the services, networks, and volumes
for setting up the application. So, you can use Docker Compose to create separate containers, host
them and get them to communicate with each other. Each containerwill exposea port for
communicating with other containers.
Docker Swarm is a technique to create and maintain a cluster ofDocker Engines. The Docker engines
can be hosted on differentnodes, and these nodes, which are in remote locations, form a Cluster when
connected in Swarm mode.

Software Engineering (3161605) SVIT Vasad


200410116038 TY IT-1 (Batch A)

With this, we come to an end to the theory part of this Docker Explained blog, wherein you must
have understood all the basicterminologies.
In the Hands-On part, I will show you the basic commands of Docker,and tell you how to create a
Docker file, Images & a Docker Contain.

Advantages of Docker include:

There are the following advantages of Docker -

 It runs the container in seconds instead of minutes.


 It uses less memory.
 It provides lightweight virtualization. 
 It does not a require full operating system to run applications.
 It uses application dependencies to reduce the risk.
 Docker allows you to use a remote repository to share your container withothers.
 It provides continuous deployment and testing environment.

Disadvantages of Docker include:

There are the following disadvantages of Docker -

 It increases complexity due to an additional layer.


 In Docker, it is difficult to manage large amount of containers.
 Some features such as container self -registration, containers self-inspects, copying files
form host to the container, and more are missing in the Docker.
 Docker is not a good solution for applications that require rich graphical interface.
 Docker provides cross-platform compatibility means if an application is designed to run
in a Docker container on Windows, then it can't run on Linux or vice versa

Software Engineering (3161605) SVIT Vasad


200410116038 TY IT-1 (Batch A)

BEYOND SYLLABUS
PRACTICAL – 12

Aim: Explore the Microsoft Project tool and explain the characteristics and scheduling with
GANTT chart and PERT Chart.

Solution:

Microsoft Project is a project management tool developed by Microsoft that allows users to plan, manage, and
track projects efficiently. It offers a range of features and capabilities to aid project managers in scheduling,
resource allocation, budgeting, and monitoring project progress. Two key components of Microsoft Project are
the Gantt chart and PERT chart.

Gantt Chart:

-Characteristics: A Gantt chart is a visual representation of a project schedule that illustrates the timeline of
activities, their durations, and their dependencies. It provides a clear overview of project tasks, their start and
end dates, and how they relate to each other.
-Scheduling: Microsoft Project enables users to create and manage Gantt charts by entering task information,
durations, dependencies, and resource assignments. The tool automatically calculates task start and end dates
based on dependencies and resource availability. Users can modify task durations, dependencies, and resource
assignments directly on the Gantt chart, and the software will update the schedule accordingly. This allows
project managers to optimize resource allocation, identify critical path activities, and adjust the schedule as
needed.

PERT Chart (Program Evaluation and Review Technique):

-Characteristics: A PERT chart is a network diagram that visually represents the sequence of tasks in a project,
their interdependencies, and their estimated durations. It incorporates both task dependencies and probabilistic
time estimates to analyze the project's critical path and identify the most efficient schedule.
-Scheduling: While Microsoft Project does not have a built-in PERT chart view, it supports the creation and
management of task dependencies and durations, which are essential components of PERT analysis. By
defining task dependencies and assigning durations, project managers can use the critical path method (CPM)
within Microsoft Project to determine the project's critical path, identify slack time, and assess project schedule
flexibility. This information can aid in resource allocation, risk management, and decision-making.

Overall, Microsoft Project combines the power of Gantt charts and PERT analysis to facilitate project
scheduling and monitoring. The Gantt chart provides a visual timeline view of tasks and their dependencies,
while the critical path analysis, facilitated by task dependencies and durations, helps identify project bottlenecks
and optimize scheduling decisions. By utilizing these features, project managers can effectively plan and
manage projects, allocate resources efficiently, and track progress against the defined schedule.

Software Engineering (3161605) SVIT Vasad

You might also like