Se Lab
Se Lab
Se Lab
plan.
Introduction: Project managers can use OpenProj, a free task tracking application, when
creating effective plans. OpenProj delivers functionality that rivals the capabilities of
commercial software. This can save thousands of dollars in start-up costs. Of course, saving a
lot of money can be foolish if the required tasks can't be done. This is not the case with
OpenProj. Luckily the OpenProj application gives managers a full set of tools that are typically
used to track projects. Useful aids such as critical path analysis, resource tracking and task
comments are all present in OpenProj. The tool is ideal for simple project management but is
capable of larger efforts as well.
For the purposes of the example project plan, the following assumptions are made: -
The OpenProj software has already been installed and correctly configured on a
workstation with an attached printer.
The target implementation date is 6 months away but is not an absolute fixed date.
Opensource.org interface Create account on
Opensource.org website
1|Page
Account is Created and Software is ready to use
Task-2
MissioIt of OpcliProject
The mission of OpenProject can be quickly summarized: we want to build excellent
open source project collaboration software. And when I say open source, I meant it. We
strive to make OpenProject a place to participate, collaborate, and get involved—with an
active, open- minded, transparent, and innovative community.
Companies have finally become aware of the importance of project management
software and also the big advantages of open source. But why is it that project teams
still tend to switch to old-fashioned ways of creating project plans, task lists, or status
reports with Excel, PowerPoint, or Word—cr having other expensive proprietary project
management software in use? We want to offer a real open source alternative for
companies: free, secure, and easy to use.
: 4/4/18
8:00 AM
TASK-3
AIM:-Preparation of Software Requirement Specification Document, Design
Documents and Testing Phase
SRS FOR QUEST GROUP OF INSTITUTIONS
3|Page
Functional Requirements
R.1. Registrations
`R.1.1. Admissions
R.1.1.1. Courses
R.1.1.2. International Students
R.1.1.3. Enquiry
R.2. Annoucements
R.2. Reliability
R.3. Regulatory
R.4. Maintainability
R.5. Serviceability
R.6. Utility
R.7. Security
R.8. Manageability
R.12. Usability
R.13. Interoperability
The DFD level 0 (context diagram) portrays the systems’ abstract view or the single
process with its external parties. It depicts the overall structure as a single bubble that
comes with incoming and outgoing indicators showing input and output data.
This diagram serves as the main idea that reveals the main process, users, and data that roam the
system. The college system’s external entities are as follows:
College Administrator
Teachers
B. 1 Level DFD – College Management System
The context diagram is used to derive the DFD Level 1 content, which is then split down into
sub-processes. This is to inform the programmer about the system’s included operations and
data inputs.
5|Page
The 1st level of the college management system DFD is composed of the following sub-
processes:
DFD level 2 describes where data inputs are routed and where they originate inside the project.
Once you know how to use a data flow diagram, you can figure out how important it is to break
down operations in more detail.
Figure 1
Level 2 is the most abstract level of the data flow diagram for the college administration system.
Also emphasized is data management, including data storage (database). Databases were
responsible for storing the data that entered the system and serving as the source of data outputs.
6|Page
Figure 2
Task: - 5
SCM Process
The software configuration management process defines a series of tasks that have four
primary objectives:
8|Page
1. To identify all the items that collectively defines the software configuration.
2. To manage changes to one or more of these items.
3. To facilitate the construction of different versions of an application.
4. To ensure that software quality is maintained as the configuration evolves over time.
Risk Management
1. A risk is any anticipated unfavourable event or circumstance that can occur while project
is being developed
2. The project manager needs to identify different type of risk in advance so that the
project deadlines don’t get extended
3. There are three main activities of risk management
Risk identification
1. The project manager needs to anticipate the risk in project as early as possible so
that the impact of risk can be minimised by using defective risk management plans
2. Following are the main types of risk that need to be identified
3. Project risk:- these include
Resource related issues
Schedule problems
Budgetary issues
Staffing problem
Customer related issues
4. Technical risk := includes
Potential design problems
Implementation and interfacing issues
Incomplete specification.
Changing specification and technical uncertainty
Ambiguos specification
Testing and maintenance problem
5. Business risk :-
Market trend changes
Developing a product similar to the existing applications
9|Page
Personal commitments
4. In order to be able to successfully identify and foresee the different type of
risk that might affect a project it is good idea to have a company disaster list
5. The company disaster list contains al the possible risk or events that can occur in
similar projects
Risk assessment: -
1. The main objective of risk assessment is to rank the risk in terms of their damage
causing potential
2. The priority of each list can be computed using the equation p=r*s, where p is
priority with whichthe risk must be handled , r is probability of the risk becoming
true and s is severity of damage caused due to the risk becoming true
3. If all the identified risk are prioritised than most likely and damaging risk can be
handled first and others later on
Risk containment: -
1. Risk containment include planning the strategies to handle and face the
most likely and damagingrisk first
2. Following are the strategies that can be used in general
a. Avoid the risk :- eg:- in case of having issues in designing phase with
reference to specifiedrequirements , one can discuss withe customer to
change the specifications and avoid the risk
b. Transfer the risk :-
i. This includes purchasing and insurance coverage
ii. Getting the risky component developed by Third party
Risk reduction: - leverage factor:
a) The project manger must consider the cost of handling the risk and the
corresponding reduction of the risk
b) Risk leverage = ( risk exposure before reduction - risk exposure after
reduction) / cost of reduction
Task: - 6
Figure: - 5.1
• Layer 1 is the user interface whose function is to help the user to interact with core of
the system. It provides a graphical user interface to users using which interaction with the
system become easy.
• Layer 2 depicts tool management system (TMS) which constitutes multiple tools of
different category using which automation of the development process can be done. TMS
may include some tools to draw diagrams or to generate test cases.
• Layer 3 represents object management system (OMS) which represents the set of objects
generated by the users. Group of design notations, set of test cases (test suite) are treated
as the objects.
• Layer 4 represents a repository which stores the objects developed by the user. Layer 4 is
nothing but a database which stores automation files.
Components of CASE Tools: - CASE tools can be broadly divided into the following
parts based on their use at a particular SDLC stage:
Central Repository - CASE tools require a central repository, which can serve as a source of
common, integrated and consistent information. Central repository is a central place of storage
where product specifications, requirement documents, related reports and diagrams, other
11 | P a g e
useful information regarding management are stored. Central repository also serves as data
dictionary.
Upper Case Tools - Upper CASE tools are used in planning, analysis and design stages
of SDLC.
Lower Case Tools - Lower CASE tools are used in the implementation, testing
and maintenance stages.
Integrated Case Tools - Integrated CASE tools are helpful in all the stages of
SDLC, from Requirement gathering to Testing and documentation.
Figure: - 5.2
1. Need for organization - wide commitment: To be used effectively, CASE tools require
the commitment of the organisation. Every member of the development team must
adhere to the standards, rules and procedures laid down by the CASE tool
environment.
2. Unrealistic expectations: CSE tools cannot replace experienced business/systems
analysts and designers. They cannot automatically design a system nor can they
ensure that the business requirements are met. Analysts and designers still need to
understand the business environment and identify the system requirements. CASE
tools can only support the analytical skills of the developers, not replace them.
3. Long learning curve: CASE is technical software. It will take time for the development
team to get use to flow and use it effectively for development work.
5. Costs of CASE tools: CASE tools are complicated software packages and are, therefore,
expensive to buy. In addition to the initial costs, there are many ‘soft’ costs that have to be
considered. These ‘soft costs’ include integration of the new tool, customising the new tool,
initial and on-going training of staff, hardware costs and consultancy provided by the CASE
tool vendor.
13 | P a g e
Task:-7
Unit Testing:- Unit testing, a testing technique using which individual modules are tested to determine
if there are any issues by the developer himself. It is concerned with functional correctness of the
standalone modules. The main aim is to isolate each unit of the system to identify, analyze and fix the
defects.
14 | P a g e
areas such as performance).
Unit testing should be done in conjunction with other software testing activities, as they can
only show the presence or absence of particular errors; they cannot prove a complete absence of
errors.
To guarantee correct behaviour for every execution path and every possible input, and ensure
the absence of errors, other techniques are required, namely the application of formal methods
to proving that a software component has no unexpected behaviour.
Advantage: Big Bang testing has the advantage that everything is finished before integration
testing starts.
15 | P a g e
Disadvantage: The major disadvantage is that in general it is time consuming and difficult to trace the
cause of failures because of this late integration.
2. Top-down integration testing: Testing takes place from top to bottom, following the control
flow or architectural structure (e.g. starting from the GUI or main menu). Components or systems
are substituted by stubs. Below is the diagram of ‘Top down Approach”
Task:-8
Aim: - To perform various white box and black box testing techniques.
17 | P a g e
White Box Testing: -
White Box Testing is the testing of a software solution's internal coding and infrastructure. It focuses
primarily on strengthening security, the flow of inputs and outputs through the application, and improving
design and usability. White box testing is also known as Clear Box testing, Open Box testing, Structural
testing, Transparent Box testing, Code-Based testing, and Glass Box testing.
It is one of two parts of the "box testing" approach of software testing. Its counter-part, black box
testing, involves testing from an external or end-user type perspective. On the other hand, White box
testing is based on the inner workings of an application and revolves around internal testing.
The term "white box" was used because of the see-through box concept. The clear box or white box name
symbolizes the ability to see through the software's outer shell (or "box") into its inner workings.
Likewise, the "black box" in "Black Box Testing" symbolizes not being able to see the inner workings of
the software so that only the end-user experience can be tested.
18 | P a g e
what testers do when testing an application using the white box testing technique:
Step 1) Understand the source code
The first thing a tester will often do is learn and understand the source code of the application. Since white
box testing involves the testing of the inner workings of an application, the tester must be very
knowledgeable in the programming languages used in the applications they are testing. Also, the testing
person must be highly aware of secure coding practices. Security is often one of the primary objectives of
testing software. The tester should be able to find security issues and prevent attacks from hackers and
naive users who might inject malicious code into the application either knowingly or unknowingly.
Step 2) Create test cases and execute
The second basic step to white box testing involves testing the application's source code for proper flow
and structure. One way is by writing more code to test the application's source code. The tester will
develop little tests for each process or series of processes in the application. This method requires that the
tester must have intimate knowledge of the code and is often done by the developer. Other methods
include Manual Testing, trial and error testing and the use of testing tools as we will explain further on in
this article.
Integration Testing: - Integration testing is a level of software testing where individual units are combined
and tested as a group. The purpose of this level of testing is to expose faults in the interaction between
integrated units. Test drivers and test stubs are used to assist in Integration Testing.
Advantages of White Box Testing: -
Code optimization by finding hidden errors.
White box tests cases can be easily automated.
Testing is more thorough as all code paths are usually covered.
Testing can start early in SDLC even if GUI is not available.
Disadvantages of White Box Testing: -
White box testing can be quite complex and expensive.
Developers who usually execute white box test cases detest it. The white box testing by developers
is not detailed can lead to production errors.
White box testing requires professional resources, with a detailed understanding of programming and
implementation.
White-box testing is time-consuming, bigger programming applications take the time to test fully.
Black Box Testing
Black box testing is a software testing techniques in which functionality of the software under test
(SUT) is tested without looking at the internal code structure, implementation details and knowledge of
internal paths of the software. This type of testing is based entirely on the software requirements and
specifications. In Black Box Testing we just focus on inputs and output of the software system
without bothering about internal knowledge of the software program.
TASK – 9
21 | P a g e
Web Testing, or website testing is checking your web application or website for potential bugs before its
made live and is accessible to general public. Web Testing checks for functionality, usability, security,
compatibility, performance of the web application or website.
During this stage issues such as that of web application security, the functioning of the site, its access to
handicapped as well as regular users and its ability to handle traffic is checked.
Now, we will test a website and check its performance.
We are going to conduct a test on Questgoi.org using an online website testing tool which is GTmetrix.
Step1.Put an URL.
Performance Summary
Opportunities & Experiments
22 | P a g e
Is it Quick?Needs Improvement.
This site was very slow to connect and deliver initial code. It began rendering content with considerable
delay. The largest contentful paint time was slower than ideal.
Is it Usable?Needs Improvement.
This site had minor layout shifts.It took a long time to become interactive. It had 2 accessibility issues, none
serious. 0.27% of HTML was generated client-side, delaying usability.
Is it Resilient?Not bad...
This site had many render-blocking 3rd party requests. It had no security issues detected. Dependence on
client-generated HTML risks fragility.
23 | P a g e