Sie sind auf Seite 1von 19

Sandip Foundation’s

SANDIP INSTITUTE OF TECHNOLOGY & RESEARCH CENTRE, NASHIK


DEPARTMENT OF COMPUTER ENGINEERING

Savitribai Phule Pune University


Final Year of Computer Engineering (2015 Course)
410247:Laboratory Practice II

Teaching Scheme: Credit (02) Examination Scheme:


PR: 04 Hours/Week Term Work : 50 Marks
Practical : 50 Marks

Name & Sign of Faculty Head of the Department


Preface
Laboratory Practice-II is based on two elective subjects namely Software architecture and design
patterns and Software Testing and Quality Assurance. The aim of this practical is to improve
programming and project skills of the students. Here 4 mini projects are required to implement by
students. The students will be in the group of 2 to 3.They can implement latest topics in computer
domain. At the end of the practical students will be good in programming as well as project
requirements.

Introduction to Lab:
For this laboratory total 4 assignments are provided as mini projects performed by students. The
students can select latest programming languages like Java, Python etc. They can use database
management system for back end. Students can implement projects based on Client-Server
technology and web based or desktop applications. Students will gain knowledge of design patterns,
Class diagram and various UML diagrams. The assignments also focus on testing tools. Various test
cases design for application.

Prerequisites:
 Software Architecture and Design Patterns
 Software Testing and Quality Assurance

Objectives:
 To understand the concepts of software testing.
 To learn the concepts of White box, Block box, Object oriented,web based and cloud
testing.
 To know in details automation testing and tools used for automation testing.
 To understand the importance of software quality and assurance software systems
development.
 To study and implement various design patterns.

Outcomes:
On completion of the course, student will be able to–
Identify various design patterns and create strategies for data processing using client server
technologies as the application.
List the benefits of architectural and design pattens.
Understand various class diagrams and requirements for the UML Diagrams.
Apply various testing tools and test an application.
Design test cases for an application.

List of Assignments with practical plan


List of Laboratory Assignments
Sr. Assignment Name Date of Reference
No Conduction
1

Mini-Project : Narrate concise System Requirements


Specification and organize the problem domain area
into broad subject areas and identify the boundaries of
problem/system. Identify and categorize the target
system services with detailed service specifications
modeled with component diagram incorporating
appropriate architectural style and coupling. Design the
service layers and tiers modeled with deployment
diagram accommodating abstraction, autonomy,
statelessness and reuse. Map the service levels and
primitives to appropriate Strategies for data processing
using Client-Server Technologies as applicable.
2 Mini-Project : Select a moderately complex system
and narrate concise requirement specification for the
same. Design the system indicating system elements
organizations using applicable architectural styles and
design patterns with the help of a detailed Class diagram
depicting logical architecture. Specify and document the
architecture and design pattern with the help of
templates. Implement the system features and judge the
benefits of the design patterns accommodated.

3 Mini-Project : Create a small application by selecting


relevant system environment / platform and
programming languages. Narrate concise Test Plan
consisting features to be tested and bug taxonomy.
Prepare Test Cases inclusive of Test Procedures for
identified Test Scenarios. Perform selective Black-box
and White-box testing covering Unit and Integration test
by using suitable Testing tools. Prepare Test Reports
based on Test Pass/Fail Criteria and judge the
acceptance of application developed.

4 Mini-Project : Create a small web-based application by


selecting relevant system environment / platform and
programming languages. Narrate concise Test Plan
consisting features to be tested and bug taxonomy.
Narrate scripts in order to perform regression tests.
Identify the bugs using Selenium WebDriver and
IDEand generate test reports encompassing exploratory
testing.

Guidelines for Students

 Students are expected to submit laboratory assignments in the form of journal.


 Student should implement miniprojects with proper output and source code.
 Student should specify problem statement in proper way.
 Students should maintain proper UML diagrams ,test cases and software requirement
specification.

Guidelines for Instructor


Continuous assessment of laboratory work done based on overall performance and lab
assignments performance of student.
Each lab assignment will be given as weightage of marks.
Suggested parameters for overall assessment as well as each lab assignment assessment include-
timely completion, performance, innovation, efficient codes, punctuality and neatness.
Group-SADP

Assignment No:-1

Title:-
Narrate concise System Requirements Specification.

Assignment Name:-
Narrate concise System Requirements Specification and organize the
problem domain area into broad subject areas and identify the boundaries of problem/system. Identify
and categorize the target system services with detailed service specifications modeled with
component diagram incorporating appropriate architectural style and coupling. Design the service
layers and tiers modeled with deployment diagram accommodating abstraction, autonomy,
statelessness and reuse. Map the service levels and primitives to appropriate Strategies for data
processing using Client-Server Technologies as applicable.

Objectives:-

 System Software requirements


 UML diagrams
 Client Server Application

Outcomes:-
Mini project based on Client Server application

Prerequisites-

 Software architecture and Design Patterns.


Problem Statement:-
The project Hospital Management system includes registration of patients,
storing their details into the system, registration of Doctors ,storing their details and taking appointment
for patient.

Overview:-
The proposed project is a smart appointment booking system that provides
patients or any user an easy way of booking a doctor’s appointment online. This is a web based
application that overcomes the issue of managing and booking appointments according to user’s choice or
demands. The task sometimes becomes very tedious for the compounder or doctor himself in manually
allotting appointments for the users as per their availability. Hence this project offers an effective solution
where users can view various booking slots available and select the preferred date and time. The already
booked space will be marked yellow and will not be available for anyone else for the specified time. This
system also allows users to cancel their booking anytime.

1. SYSTEM ANALYSIS

A)EXISTING SYSTEM:
Hospitals currently use a manual system for the management and maintainance
of critical information. The current system requires numerous paper forms, with data stores spread
through out the hospital management infrastructure. Often information is incomplete or does not follow
management standards. Forms are often lost in transit between departments requiring a comprehensive
auditing process to ensure that no vital information is lost. Multiple copies of the same information exist
in the hospital and may lead to inconsistencies in data in various data stores.

B)PROPOSED SYSTEM:
The Hospital Management System is designed for any hospital to replace
their existing manual paper based system. The new system is to control the information of patients. Their
free time,Date and appointments. These services are to be provided in an efficient, cost effective manner,
with the goal of reducing the time and resources currently required for such tasks .

2. SOFTWARE SPECIFICATION

A) HTML:
 HTML or Hypertext Markup Language is the standard markup language used to create web
pages.
 HTML is written in the form of HTML elements consisting of tags enclosed in angle
brackets (like <html>). HTML tags most commonly come in pairs like <h1> and </h1>, although
some tags represent empty elements and so are unpaired, for example <img>. The first tag in a pair
is the start tag, and the second tag is the end tag (they are also called opening tags and closing
tags). Though not always necessary, it is best practice to append a slash to tags which are not
paired with a closing tag.
 The purpose of a web browser is to read HTML documents and compose them into visible or
audible web pages. The browser does not display the HTML tags, but uses the tags to interpret the
content of the page. HTML describes the structure of a website semantically along with cues for
presentation, making it a markup language rather than a programming language.
 HTML elements form the building blocks of all websites. HTML allows images and objects to be
embedded and can be used to create interactive forms. It provides a means to create structured
documents by denoting structural semantics for text such as headings, paragraphs, lists, links,
quotes and other items. It can embed scripts written in languages such as JavaScript which affect
the behavior of HTML web pages.

B) CASCADING STYLE SHEETS (CSS):


 It is a style sheet language used for describing the look and formatting of a document written in a
markup language. While most often used to style web pages and interfaces written
in HTML and XHTML, the language can be applied to any kind of XML document,
including plain XML, SVG and XUL. CSS is a cornerstone specification of the web and almost
all web pages use CSS style sheets to describe their presentation.
 CSS is designed primarily to enable the separation of document content from document
presentation, including elements such as the layout, colors, and fonts.[1] This separation can
improve content accessibility, provide more flexibility and control in the specification of
presentation characteristics, enable multiple pages to share formatting, and reduce complexity and
repetition in the structural content .
 CSS can also allow the same markup page to be presented in different styles for different
rendering methods, such as on-screen, in print, by voice (when read out by a speech-based
browser or screen reader) and on Braille-based, tactile devices. It can also be used to allow the
web page to display differently depending on the screen size or device on which it is being
viewed. While the author of a document typically links that document to a CSS file, readers can
use a different style sheet, perhaps one on their own computer, to override the one the author has
specified. However if the author or the reader did not link the document to a specific style sheet
the default style of the browser will be applied.

C) MySQL:

 MySQL is developed, distributed, and supported by Oracle Corporation. MySQL is a


database system used on the web it runs on a server. MySQL is ideal for both small and large
applications. It is very fast, reliable, and easy to use. It supports standard SQL. MySQL can be
compiled on a number of platforms.
 The data in MySQL is stored in tables. A table is a collection of related data, and it consists of
columns and rows. Databases are useful when storing information categorically.
D) PHP

WHAT IS PHP?

 PHP is an acronym for "PHP Hypertext Preprocessor"


 PHP is a widely-used, open source scripting language
 PHP scripts are executed on the server
 PHP costs nothing, it is free to download and use

WHAT CAN PHP DO?

 PHP can generate dynamic page content


 PHP can create, open, read, write, delete, and close files on the server
 PHP can collect form data
 PHP can send and receive cookies
 PHP can add, delete, modify data in your database
 PHP can restrict users to access some pages on your website
 PHP can encrypt data

With PHP you are not limited to output HTML. You can output images, PDF files, and even Flash movies.
You can also output any text, such as XHTML and XML.

WHY PHP?

 PHP runs on various platforms (Windows, Linux, Unix, Mac OS X, etc.)


 PHP is compatible with almost all servers used today (Apache, IIS, etc.)
 PHP supports a wide range of databases
 PHP is free. Download it from the official PHP resource: www.php.net

E) Bootstrap

 Bootstrap is a free and open source front end development framework for the creation of websites
and web apps. The Bootstrap framework is built on HTML, CSS, and JavaScript (JS) to facilitate
the development of responsive, mobile-first sites and apps.
 Responsive design makes it possible for a web page or app to detect the visitor’s screen size and
orientation and automatically adapt the display accordingly; the mobile first approach assumes that
smartphones, tablets and task-specific mobile apps are employees' primary tools for getting work
done and addresses the requirements of those technologies in design.
 Bootstrap includes user interface components, layouts and JS tools along with the framework for
implementation. The software is available precompiled or as source code.
3. Scope and Limitations:

A variety of online scheduling applications are available on the market today.


However, they vary greatly in the types of features, functionality and services offered. Due diligence and
research should be conducted when selecting an appointment scheduling software provider, given the
important role in could play in the operations of healthcare, medical or wellness facility. Common
considerations include: Due diligence and research should be conducted when selecting an appointment
scheduling software provider, given the important role in could play in the operations of healthcare,
medical or wellness facility.

1. Features and functionality.


Although some features and functionality come standard with some
scheduling systems, they can vary widely among the many service providers. A current analysis
of both current and future needs can help facilities in the selection process. Creating a specified
workflow typically requires the most time in the analysis process, and a provider should utilize
the services of a team of specialists experienced with multiple variations of scheduling processes.

2. Professional services.
Medical, healthcare and wellness facilities oftentimes have unique scheduling
needs that stretch beyond the standard functionality of the system, as stated in the above. This is
especially true of facilities with multiple locations, large numbers of staff and patients/customers,
and a high volume of appointments. Many providers do not offer the professional services
necessary to accommodate these needs. Inquire on what the provider currently offers and its
limitations for customization and advanced services.

3. Security.
As mentioned in the HIPAA compliance section above, security is a
must when it comes to an online scheduling system. Reputable providers incorporate the latest
security measures and practices, such as secure server databases, data storage and back-up
procedures, processes related to failover and federal regulations, as well as the aforementioned
HIPAA-compliant practices.
4. Cost.
The cost of an online scheduling system for medical, healthcare and
wellness facilities typically is determined by the scope of the operations and what the software
will be used for. Smaller facilities may require just a basic set-up with a nominal monthly fee.
Larger facilities and centers, however, typically will require more than just a basic subscription,
especially if they utilize professional services, as mentioned in the above bullet item. Recognizing
this, some scheduling providers offer a more cost-effective monthly package to accommodate the
high usage and multiple locations common with most of these operations. (These costs would
otherwise add up quickly if purchased as individual accounts.) Reputable providers will write up
a contract that includes all work to be done, requirements, the total cost of the work and monthly
fees, and other information pertinent to both parties.

5. Customer support.
24-hour, live support should be a requirement when researching an
online scheduling software provider. The ability to immediately reach a dedicated contact or
support representative is imperative for a scheduling application that needs to be functional at all
times and one that reaches across multiple locations.

6. Dependability.
Longevity is usually a good tell-tale sign of a dependable service
provider. Learn how long the provider has been in business. Another sign of a dependable
application is feedback from other healthcare, medical and wellness facilities that utilize it in a
similar fashion. Most providers are willing to provide references upon request.
4. Object-oriented design using UML:-

 Use Case Diagram:

A usecase diagram in the Unified Modeling Language(UML) is a type of behavioral diagram


defined by and created from a use-case analysis.its purpose is to present a graphical overview of the
functionality provided by a system in terms of actors, their goals(represented as use cases),and any
dependencies between those use cases.

Use case diagrams are formally included in two modeling languages defined by the
OMG:theunfied modeling language(UML) and the systems modeling language(sysML)
 Component diagram:

When modeling large object-oriented systems, it is necessary to break down


the system into manageable subsystems. UML component diagrams are used for modeling large
systems into smaller subsystems which can be easily managed.

A component is a replaceable and executable piece of a system whose


implementation details are hidden. A component provides the set of interfaces that a component
realizes or implements. Components also require interfaces to carry out a function.UML
Component diagrams are used to represent different components of a system.

1. A component is a replaceable and executable piece of a system.


2. A component provides the set of required interfaces that a component realizes or implements.
3. These are the static diagrams of the unified modeling language.
4. It is a modular part of a system that encapsulates its contents
5. Component diagrams are used to represent the working and behavior of various components
of a system.
6. Various components together make a single system.
 Deployement diagram:

Deployment Diagram is a type of diagram that specifies the physical hardware on which
the software system will execute. It also determines how the software is deployed on the underlying
hardware. It maps software pieces of a system to the device that are going to execute it.

The deployment diagram maps the software architecture created in design to the physical
system architecture that executes it. In distributed systems, it models the distribution of the software
across the physical nodes.

The software systems are manifested using various artifacts, and then they are mapped to
the execution environment that is going to execute the software such as nodes. Many nodes are involved
in the deployment diagram; hence, the relation between them is represented using communication paths.
5. Operational Requirements

8.1 Help Desk Support

 System users have a 24x7 access to telephone assistance for questions that are technical in
nature, such as, slow or sluggish system response time, incompatible browser features,
application errors, system downtime inquiries, account lock-out assistance, etc.

8.2 Application Services and Technical support

 Programmers and application developers will have access to source code to address bugs or
system enhancements as deemed necessary. Network Administrator and DBA support is
also required to maintain a 24x7 system uptime.

8.3 Administration Features

 System security and access levels are provided in the online system. There are varying
levels of system access and functional authority. Each Clients access is limited to his/her
own registration records. Only authorized system administrator(s) has access to all
Patients/Doctors registration records.
 He can Modify or delete it too.

8.4 System hardware fail over and routine back up

 Computer operations center will handle system hardware tasks such as data tape back-up,
hardware maintenance, fail over, scheduled system patches and maintenance.

8.5 Audit Trail

 System audit trails are inherent part of all User registrations. Among others, all appoint
records will capture what action was taken, when (time-stamp) the appointment taken and
who taken the appointment.
6. Functional Requirements
 Courses have scheduling conflict
 Course does not exist
 Course requires a prerequisite that is not met
 Course has already been registered and or completed

7. Input Requirements
10.1 Student identifier key and user access
Each student is assigned a unique identifier upon admission to the university. The student must
know this. This identifying key maps to all his/her registration record information in the main regis-
tration system. Admitted and current students have their online registration accounts also enabled.
Such account maybe disabled during his/her stay as a matriculated student and/or after graduation
or separation from the university.
10.2 Course code
Course Codes and registration schedules will be made available through the system. It will be
emailed to the students email address on record prior to the next semester to assist the student’s reg-
istration plans.
10.3 Action Codes
All other action (transaction) codes such as course add/drop will be available online for reference
and to assist users.These action codes will be similar to VRU’s transaction codes if appropriate.
11.Process Requirements
The following are among the inherent requirements that the online registration system must be able
to handle.
11.1 DB2 transaction
The system must be able to send, receive and trigger transaction to the DB2 registration database
system.
11.2 Data integrity
Commit transactions that are completed and/or rollback unfinished or time-out transactions.
11.3 Data validation
Data error from the user’s end and from the back-end database-processing end must be gracefully
handled. There will be data validation and error-handling routines as part of the online registration
system.
11.4 Performance
Must resolve locking issues and handle concurrent use of the system on a 24x7 basis. Send, receive
and display user messages to assist the over-all user experience.
11.5 Data repository
The online registration system will maintain the existing DB2 registration database as the main
repository of data.
11.6 Class view

11.7 Activity Diagram:


12. Hardware Requirements
The most common set of requirements defined by any operating system or software
application is the physical computer resources, also known as hardware. A hardware requirements
list is often accompanied by a hardware compatibility list (HCL), especially in case of operating
systems. An HCL lists tested, compatibility and sometimes incompatible hardware devices for a
particular operating system or application. The following sub-sections discuss the various aspects
of hardware requirements.

HARDWARE REQUIREMENTS FOR PRESENT PROJECT:


PROCESSOR : Intel dual Core, i3
RAM : 1 GB
HARD DISK : 80 GB

13. Software Requirements


Software Requirements deal with defining software resource requirements and
pre-requisites that need to be installed on a computer to provide optimal functioning of an
application. These requirements or pre-requisites are generally not included in the software
installation package and need to be installed separately before the software is installed.

SOFTWARE REQUIREMENTS FOR PRESENT PROJECT:


OPERATING SYSTEM : Windows 7/ XP/8

FRONT END : Html, css

SERVER SIDE SCRIPT : Php

DATABASE : Mysql

Conclusion
The appointment-scheduling process, historically viewed as a necessary burden in medical
offices, healthcare facilities and wellness centers, can be completely automated through an inefficient
online scheduling software program. The benefits of implementing this technology touch everyone
involved in the scheduling process, as administrators and staff can conduct their tasks more efficiently and
accurately, while customers and clients have the ability to book their appointments and reservations
quickly and more conveniently.

Das könnte Ihnen auch gefallen