Ex. no: 1 STUDY OF UML DIAGRAMS Date: UML DIAGRAMS There are three classifications of UML diagrams: • Behavior diagrams. A type of diagram that depicts behavioral features of a system or business process. This includes activity, state machine, and use case diagrams as well as the four interaction diagrams. • Interaction diagrams. A subset of behavior diagrams which emphasize object interactions. This includes communication, interaction overview, sequence, and timing diagrams. • Structure diagrams.
A type of diagram that depicts the elements of a specification that are irrespective of time. This includes class, composite structure, component, deployment, object, and package diagrams. |Diagram |Description |Learning Priority | |Activity Diagram |Depicts high-level business processes, including data flow, or to model the |High | | |logic of complex logic within a system. | |Class Diagram |Shows a collection of static model elements such as classes and types, their |High | | |contents, and their relationships. | | |Communication Diagram |Shows instances of classes, their interrelationships, and the message flow |Low | | |between them.
Communication diagrams typically focus on the structural | | | |organization of objects that send and receive messages. Formerly called a | | | |Collaboration Diagram. | | |Component Diagram |Depicts the components that compose and application, system, or enterprise. |Medium | | |The components, their interrelationships, interactions, and their public | | | |interfaces are depicted. | |Composite Structure Diagram |Depicts the internal structure of a classifier(such as a class, component, or|Low | | |use case), including the interaction points of the classifier to other parts | | | |of the system. | | |Deployment Diagram |Shows the execution architecture of systems.
This includes nodes, either |Medium | | |hardware or software execution environments, as well as the middleware | | | |connecting them. | | |Interaction Overview Diagram |A variant of an activity diagram which overviews the control flow within a |Low | | |system or business process. Each node/activity within the diagram can | | | |represent another interaction diagram. | |Object Diagram |Depicts objects and their relationships at a point in time, typically a |Low | | |special case of either a class diagram or a communication diagram. | | |Package Diagram |Show how model elements are organized into packages as well as the |Low | | |dependencies between packages. | |Sequence Diagram |Models the sequential logic, in effect the time ordering of messages between |High | | |classifiers. | | |State Machine Diagram |Describes the states an object or interaction may be in, as well as the |Medium | | |transitions between states. Formerly referred to as a state diagram, state | | | |chart diagram, or a state-transition diagram. | |Timing Diagram |Depicts the change in state or condition of a classifier instance or role |Low | | |over time. Typically used to show the change in state of an object over time | | | |in response to external events. | | |Use Case Diagram |Shows use cases, actors, and their interrelationships. |Medium | USE CASE DIAGRAM: A use case diagram is a type of behavioral diagram defined by the Unified Modeling Language (UML).
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 diagram depict: • Use cases. A use case describes a sequence of actions that provide something of measurable value to an actor and is drawn as a horizontal ellipse. • Actors. An actor is a person, organization, or external system that plays a role in one or more interactions with your system. Actors are drawn as stick figures. • Associations.
Associations between actors and use cases are indicated in use case diagrams by solid lines. An association exists whenever an actor is involved with an interaction described by a use case. Associations are modeled as lines connecting use cases and actors to one another, with an optional arrowhead on one end of the line. The arrowhead is often used to indicating the direction of the initial invocation of the relationship or to indicate the primary actor within the use case. The arrowheads are typically confused with data flow and as a result I avoid their use. System boundary boxes (optional). You can draw a rectangle around the use cases, called the system boundary box, to indicate the scope of your system. Anything within the box represents functionality that is in scope and anything outside the box is not. System boundary boxes are rarely used, although on occasion I have used them to identify which use cases will be delivered in each major release of a system. • Packages (optional). Packages are UML constructs that enable you to organize model elements (such as use cases) into groups.
Packages are depicted as file folders and can be used on any of the UML diagrams, including both use case diagrams and class diagrams. I use packages only when my diagrams become unwieldy, which generally implies they cannot be printed on a single page, to organize a large diagram into smaller ones. [pic] RELATIONSHIPS IN USE CASE DIAGRAM: Three relationships among use cases are supported by the UML standard, which describes graphical notation for these relationships. Include In one form of interaction, a given use case may include another. The first use case often depends on the outcome of the included use case.
This is useful for extracting truly common behaviors from multiple use cases into a single description. The notation is a dashed arrow from the including to the included use case, with the label “”. This usage resembles a macro expansion where the included use case behavior is placed inline in the base use case behavior. There are no parameters or return values. Extend In another form of interaction, a given use case, (the extension) may extend another. This relationship indicates that the behavior of the extension use case may be inserted in the extended use case under some conditions.
The notation is a dashed arrow from the extension to the extended use case, with the label . This can be useful for dealing with special cases, or in accommodating new requirements during system maintenance and extension. To make the points at which extension may occur explicit extension points may be defined in use cases which are listed in a compartment below the use case name. Generalization In the third form of relationship among use cases, a generalization/ specialization relationship exists. A given use case may be specialized form of an existing use case.
The notation is a solid line ending in a hollow triangle drawn from the specialized to the more general use case. This resembles the object-oriented concept of sub-classing, in practice it can be both useful and effective to factor common behaviors, constraints and assumptions to the general use case, describe them once, and deal same as except details in the specialized cases. SEQUENCE DIAGRAM: The well-known Message Sequence Chart technique has been incorporated into the Unified Modeling Language (UML) diagram under the name of Sequence Diagram.
A sequence diagram shows, as parallel vertical lines, different processes or objects that live simultaneously, and, as horizontal arrows, the messages exchanged between them, in the order in which they occur. This allows the specification of simple runtime scenarios in a graphical manner. Sequence diagrams are typically used to model: 1. Usage scenarios. A usage scenario is a description of a potential way your system is used. The logic of a usage scenario may be part of a use case, perhaps an alternate course.
It may also be one entire pass through use case, such as the logic described by the basic course of action or a portion of the basic course of action, plus one or more alternate scenarios. The logic of a usage scenario may also be a pass through the logic contained in several use cases. For example, a student enrolls in the university, and then immediately enrolls in three seminars. 2. The logic of methods. Sequence diagrams can be used to explore the logic of a complex operation, function, or procedure. One way to think of sequence diagrams, particularly highly detailed diagrams, is a visual object code. 3.
The logic of services. A service is effectively a high-level method, often one that can be invoked by a wide variety of clients. This includes web-services as well as business transactions implemented by a variety of technologies such as CICS/COBOL or CORBA-compliant object request brokers (ORBs). [pic] ACTIVITY DIAGRAM: In the Unified Modeling Language, an activity diagram represents the business and operational step-by-step workflows of components in a system. An activity diagram shows the overall flow of control. Describing the basic notations: • Initial node. The filled in circle is the starting point of the diagram.
An initial node isn’t required although it does make it significantly easier to read the diagram. • Activity final node. The filled circle with a border is the ending point. An activity diagram can have zero or more activity final nodes. • Activity. The rounded rectangles represent activities that occur. An activity may be physical, such as Inspect Forms, or electronic, such as Display Create Student Screen. • Flow/edge. The arrows on the diagram. Although there is a subtle difference between flows and edges I have never seen a practical purpose for the difference although I have no doubt one exists. I’ll use the term flow. Fork. A black bar with one flow going into it and several leaving it. This denotes the beginning of parallel activity. • Join. A black bar with several flows entering it and one leaving it. All flows going into the join must reach it before processing may continue. This denotes the end of parallel processing. • Condition. Text such as [Incorrect Form] on a flow, defining a guard which must evaluate to true in traverse the node. • Decision. A diamond with one flow entering and several leaving. The flows leaving include conditions although some modelers will not indicate the conditions if it is obvious. Merge. A diamond with several flows entering and one leaving. The implication is that one or more incoming flows much reach this point until processing continues, based on any guards on the outgoing flow. • Partition. Activity Diagram is organized into many partitions, also called swim lanes, indicating who/what is performing the activities (the Applicant, Registrar, or System). • Sub-activity indicator. The rake in the bottom corner of an activity, such as in the Apply to University activity, indicates that the activity is described by a more finely detailed activity diagram. • Flow final.
The circle with the X through it. This indicates that the process stops at this point. [pic] CLASS DIAGRAM: In the Unified Modeling Language (UML), a class diagram is a type of static structure diagram that describes the structure of a system by showing the system’s classes, their attributes, and the relationships between the classes. Relationships A relationship is general term covering the specific types of logical connections found on class and object diagrams. UML shows the following relationships: • Instance-Level Relationships o Link A Link is the basic relationship among objects.
It is represented as a line connecting two or more object boxes. It can be shown on an object diagram or class diagram. A link is an instance or an association. o Association An Association represents a family of links. Binary associations (with two ends) are normally represented as a line, with each end connected to a class box. Higher order associations can be drawn with more than two ends. In such cases, the ends are connected to a central diamond. An association can be named, and the ends of an association can be adorned with role names, ownership indicators, multiplicity, visibility, and other properties.
There are five different types of association. Bi-directional and uni-directional associations are the most common ones. For instance, a flight class is associated with a plane class bi-directionally. Associations can only be shown on class diagrams. o Aggregation Class diagram showing Aggregation between two classes Aggregation is a variant of the “has a” or association relationship; composition is more specific than aggregation. As a type of association, an aggregation can be named and have the same adornments that an association can. However, an aggregation may not involve more than two classes.
Aggregation can occur when a class is a collection or container of other classes, but where the contained classes do not have a strong life cycle dependency on the container—essentially, if the container is destroyed, its contents are not. In UML, it is graphically represented as a clear diamond shape on the containing class end of the tree of lines that connect contained class(es) to the containing class. o Composition Composition is a stronger variant of the “has a” or association relationship; composition is more specific than aggregation.
Composition has a strong life cycle dependency between instances of the container class and instances of the contained class(es): If the container is destroyed, every instance that it contains is destroyed as well. The UML graphical representation of a composition relationship is a filled diamond shape on the containing class end of the tree of lines that connect contained class(es) to the containing class. o Differences between Composition and Aggregation The whole of a composition must have a multiplicity of 0.. 1 or 1, indicating that a part must be for only one whole.
The whole of an aggregation may have any multiplicity. When attempting to represent real-world whole-part relationships, e. g. , an engine is part of a car, the composition relationship is most appropriate. However, when representing a software or database relationship, e. g. , car model engine ENG01 is part of a car model CM01, an aggregation relationship is best, as the engine, ENG01 may be also part of a different car model, CM02. This is often called a “catalog” relationship. • Class Level Relationships o Generalization Class diagram showing generalization between one super class and two subclasses
The generalization relationship indicates that one of the two related classes (the subtype) is considered to be a specialized form of the other (the supertype) and supertype is considered as GENERALIZATION of subtype. In practice, this means that any instance of the subtype is also an instance of the supertype. The relationship is most easily understood by the phrase ‘A is a B’. The UML graphical representation of a Generalization is a hollow triangle shape on the supertype end of the line (or tree of lines) that connects it to one or more subtypes. The generalized relationship is also known as the inheritance or “is a” relationship.
The supertype in the generalization relationship is also known as the “parent”, super class, base class, or base type. The subtype in the generalization relationship is also known as the “child’, subclass, derived class, derived type, inheriting class, or inheriting type. • Generalization-Specialization relationship A is a type of B E. g. “an oak is a type of tree”, “a sedan is a type of vehicle” o Realization In UML modeling, a realization relationship is relationship between model elements, in which one model element (the client) realizes the behavior that the other model element (the supplier) specifies.
A realization is displayed in the diagram editor as a dashed line with an unfilled arrowhead towards the supplier. • General Relationship o Dependency(UML) A dependency exists between two defined elements if a change to the definition of one would result in a change to the other. This is indicated by a dashed pointing from the dependent to the independent element. Several named varieties exist. A dependency can be between instances, class, or both. • Multiplicity The association relationship indicates that (at least) one of the two related classes makes reference to the other.
In contrast with the generalization relationship, this is most easily understood through the phrase ‘A has a B'{a mother cat has kittens, kittens have a mother cat}. The UML representation of an association is a line with an optional arrowhead indicating the role of the object(s) in the relationship, and an optional notation at each end indicating the multiplicity of instances of that entity ( the number of objects that participate in the association). Common multiplicities are: Indicator Meaning 0.. No instances, or one instance(optional, may) 1 Exactly one instance 0.. * or * Zero or more instances 1.. * One or more instances(at least one) n Exactly n instances(n>1) 0.. n Zero or n instances(n>1) 1.. n One or n instances(n>1) [pic] COMPONENT DIAGRAM: In the Unified Modeling Language, a component diagram depicts how a software system is split up into physical components and shows the dependencies among these components.
Physical components could be, for example, files, header, link libraries, modules, executables, or packages. Component diagrams can be used to model and document any system’s architecture. Component diagrams are particularly useful with larger teams. Your initial architectural modeling efforts during cycle 0 should focus on identifying the initial architectural landscape for your system. UML component diagrams are great for doing this as they enable you to model the high-level software components, and more importantly the interfaces to those components.
Once the interfaces are defined, and agreed to by your team, it makes it much easier to organize the development effort between sub teams. You will discover the need to evolve the interfaces to reflect new requirements or changes to your design as your project progresses, changes that need to be negotiated between the sub teams and then implemented appropriately. [pic] INTRODUCTION TO RATIONAL ROSE Rational rose Rational Rose is an object-oriented Unified Modeling Language(UML) software design tool intended for visual modeling and component construction of enterprise-level software applications.
In much the same way a theatrical director blocks out a play, a software designer uses Rational rose to visually create(model) the framework for an application by blocking out classes with actors(stick figures), use case elements(ovals), objects(rectangles) and messages/relationships(arrows) in a sequence diagram using drag-and-drop symbols. Rational Rose documents the diagram as it is being constructed and then generates code in the designer’s choice of C++, Visual Basic, Java, Oracle8,CORBA or Data Definition Language. Two popular features of Rational Rose are its ability to provide iterative development and round-trip engineering.
Rational Rose allows designers to take advantage of iterative development(sometimes called evolutionary development) because the new application can be created in stages with the output of one iteration becoming the input to the next. (This is in contrast to waterfall development where the whole project is completed from start to finish before a user gets to try it out. ) Then, as the developer begins to understand how the components interact and makes modifications in the design, Rational Rose can perform what is called “round-trip engineering” by going back and updating the rest of the model to ensure the code remains consistent.
Rational rose is extensible, with downloadable add-ins and third-party applications. It supports COM/DCOM(ActiveX), JavaBeans, and Corba component standards. Views in UML/Rational Rose There are four views for a model created in Rational Rose, each representing the system from a different point of view. The Use Case View The use case view contains the diagrams used in analysis(use case, sequence, and collaboration), and all the elements that compromise these diagrams(e. g. , actors). More recent versions of Rational Rose also allow for additional documentation in the form of word-processed documents and/or URLs to Web-based materials.
The purpose of the use case view is to envisage what the system must do, without dealing with the specifics of how it will be implemented. Logical View The logical view contains the diagrams used in object design(class diagrams and state transition diagrams). It offers a detailed view of how the system envisaged in the use case view will be implemented. The basic element in this view is the class, which includes an outline of its attributes and operations. This directly corresponds to a class created in your chosen implementation language.
From the logical view, skeletal code can be generated for implementation into a computer language. More recent versions of Rational Rose not only can generate skeletal code for Visual C++, Visual Java, or Visual BASIC, but also reverse engineer programs created in these languages into Rational Rose models. This allows existing components to be included in documented models, if there is access to the source code. In addition, changes that need to be made during implementation can be reflected in the documentation of the design model. Component View
The component view is a step up from the logical view and contains diagrams used in system design(component diagrams). This includes information about the code libraries, executable programs, runtime libraries, and other software components that comprise the completed systems. Components can be pre-existing; for example, a Windows program in Visual C++ will utilize Microsoft Foundation Class to provide the framework for the Windows interface. Components that do not exist and need to be created by the developers will have to be designed in the logical view.
Deployment View The deployment view illustrates how the completed system will be physically deployed. This view is necessary for complex applications in which a system will have different components located on different machines. For example, interface components may be located on a user machine while other components may be located on a network server. INTRODUCTION TO VISUAL BASIC Visual Basic (VB) is an event driven programming language and associated development environment from Microsoft for its COM programming model.
Visual Basic was derived from BASIC and enables the rapid application development(RAD) of graphical user interface(GUI) applications, access to databases using DAO, RDO, or ADO, and creation of ActiveX controls and objects. Scripting languages such as VBA and VBScript are syntactically similar to Visual Basic, but perform differently. A programmer can put together an application using the components provided with Visual Basic itself. Programs written in Visual Basic can also use the Windows API, but doing so requires external function declarations. LANGUAGE BASICS:
Visual Basic was designed to be easy to learn and use. The language not only allows programmers to create simple GUI applications, but can also develop fairly complex applications as well. Programming in VB is a combination of visually arranging components or controls on a form, specifying attributes and actions of those components, and writing additional lines of code for more functionality. Since default attributes and actions are defined for the components, a simple program can be created without the programmer having to write many lines of code.
Performance problems were experienced by earlier versions, but with faster computers and native code compilation this has become less of an issue. Forms are created using drag and drop techniques. A tool is used to place controls (e. g. , text boxes, buttons, etc. ) on the form (window). Controls have attributes and event handlers associated with them. Default values are provided when the control is created, but may be changed by the programmer. Many attribute values can be modified during run time based on user actions or changes in the environment, providing a dynamic application.
For example, code can be inserted into the form resize event handler to reposition a control so that it remains centered on the form, expands to fill up the form, etc. By inserting code into the event handler for a keypress in a text box, the program can automatically translate the case of the text being entered, or even prevent certain characters from being inserted. Unlike many other programming languages, Visual Basic is generally not case sensitive, although it will transform keywords into a standard case configuration and force the case of variable names to conform to the case of the entry within the symbol table entry.
String comparisons are case sensitive by the default, but can be made case insensitive if so desired. The Visual Basic compiler is shared with other Visual Studio languages(C, C++), but restrictions in the IDE do not allow the creation of some targets (Windows model DLL’s) and threading models. Result: Thus the UML diagrams and introduction to Visual Basic was studied. PASSPORT AUTOMATION SYSTEM Ex. No: 2. a Date: Aim: To Study the software requirements specification for passport automation system. Problem Statement Passport Automation System is used in the effective dispatch of passport to all of the applicants.
This system adopts a comprehensive approach to minimize the manual work and schedule resources, time in a cogent manner. The core of the system is to get the online registration form (with details such as name, address etc. ,) filled by the applicant whose testament is verified for its genuineness by the Passport Automation System with respect to the already existing information in the database. This forms the first and foremost step in the processing of passport application. After the first round of verification done by the system, the information is in turn forwarded to the regional administrator’s (Ministry of External Affairs) office.
The application is then processed manually based on the report given by the system, and any forfeiting identified can make the applicant liable to penalty as per the law. The system also provides the applicant the list of available dates for appointment to ‘document verification’ in the administrator’s office, from which they can select one. The system forwards the necessary details to the police for its separate verification whose report is then presented to the administrator. The administrator will be provided with an option to display the current status of application to the applicant, which they can view in their online interface.
After all the necessary criteria has been met, the original information is added to the database and the passport is sent to the applicant. Software Requirements Specification 1. 0 Introduction Passport Automation System is an interface between the Applicant and the Authority responsible for the Issue of Passport. It aims at improving the efficiency in the Issue of Passport and reduce the complexities involved in it to the maximum possible extent. 1. 1 Purpose If the entire process of ‘Issue of Passport’ is done in a manual manner then it would take several months for the passport to reach the applicant.
Considering the fact that the number of applicants for passport is increasing every year, an Automated System becomes essential to meet the demand. So this system uses several programming and database techniques to elucidate the work involved in this process. As this is a matter of National Security, the system has been carefully verified and validated in order to satisfy it. 1. 2 Scope • The System provides an online interface to the user where they can fill in their personal details and submit the necessary documents (may be by scanning). The authority concerned with the issue of passport can use this system to reduce his workload and process the application in a speedy manner. • Provide a communication platform between the applicant and the administrator. • Transfer of data between the Passport Issuing Authority and the Local Police for verification of applicant’s information. • Users/Applicants will come to know their status of application and the date in which they must subject themselves for manual document verification. 1. Definitions, Acronyms and the Abbreviations • Administrator – Refers to the super user who is the Central Authority who has been vested with the privilege to manage the entire system. It can be any higher official in the Regional Passport Office of Ministry of External Affairs. • Applicant – One who wishes to obtain the Passport. • PAS – Refers to this Passport Automation System. • HTML – Markup Language used for creating web pages. • J2EE – Java 2 Enterprise Edition is a programming platform and it is the partof the java platform for developing and running distributed java applications. HTTP – Hyper Text Transfer Protocol. • TCP/IP – Transmission Control Protocol/Internet Protocol is the communication protocol used to connect hosts on the Internet. 1. 4 References IEEE Software Requirement Specification format. 1. 5 Technologies to be used • HTML• JSP• Javascript • Java• XML• AJAX 1. 6 Tools to be Used • Eclipse IDE ( Integrated Development Enivronment) • Rational Rose tool ( for developing UML Patterns) 1. 7 Overview SRS includes two sections overall description and specific requirements – Overall description will describe major role of the system components and inter-connections.
Specific requirements will describe roles & functions of the actors. 2. 0 Overall Description 2. 1 Product Perspective The PAS acts as an interface between the ‘applicant’ and the ‘administrator’. This system tries to make the interface as simple as possible and at the same time not risking the security of data stored in. This minimizes the time duration in which the user receives the passport. 2. 2 Software Interface • Front End Client – The applicant and Administrator online interface is built using JSP and HTML. The Administrators’s local interface is built using Java. • Web Server – Glassfish application server(Oracle Corporation). Back End – Oracle database. 2. 3 Hardware Interface The server is directly connected to the client systems. The client systems have access to the database in the server. 2. 4 System Functions • Secure Registration of information by the Applicants. • Schedule the applicants an appointment for manual verification of original documents. • Panel for Passport Application Status Display by the Administrator. • SMS and Mail updates to the applicants by the administrator. • Administrator can generate reports from the information and is the only authorized personnel to add the eligible application information to the database. . 5 User Characteristics • Applicant – They are the people who desires to obtain the passport and submit the information to the database. • Administrator – He has the certain privileges to add the passport status and to approve the issue of passport. He may contain a group of persons under him to verify the documents and give suggestion whether or not to approve the dispatch of passport. • Police – He is the person who upon receiving intimation from the PAS, perform a personal verification of the applicant and see if he has any criminal case against him before or at present.
He has been vetoed with the power to decline an application by suggesting it to the Administrator if he finds any discrepancy with the applicant. He communicates via this PAS. 2. 6 Constraints • The applicants require a computer to submit their information. • Although the security is given high importance, there is always a chance of intrusion in the web world which requires constant monitoring. • The user has to be careful while submitting the information. Much care is required. 2. 7 Use Case Model Description The usecase model is a representation of the interaction between the users and the system.
It captures the goals of the users and the responsibility of the system to the users. It is a special flow of events through the system. Grouping of usecases can manages the complexities and reduce the number of usecases in the package. The usecase model describes the uses of the system and show the courses of events that can be performed. A usecase is an interaction between user and system; it captures the goals of the user and the responsibility of the system to its users. It defines what happens in the system when the usecase is performed. 2. 8 Assumptions and Dependencies The Applicants and Administrator must have basic knowledge of computers and English Language. • The applicants may be required to scan the documents and send. Result: Thus the software requirements specification for passport automation system was studied. Gantt Chart for Passport Automation System Ex No : 2. b Date: Aim: To develop a risk management and project plan for passport automation system using Gantt Chart. Introduction: A Gantt chart is a type of bar chart that illustrates a project schedule. Gantt charts illustrate the start and finish dates of the terminal elements and summary elements of a project.
Terminal elements and summary elements comprise the work breakdown structure of the project. Some Gantt charts also show the dependency (i. e. , precedence network) relationships between activities. Gantt charts can be used to show current schedule status using percent-complete shadings and a vertical “TODAY” line as shown here. [pic] Passport Automation System For the project, the activities considered are: 1. Requirement Analysis 2. Literature Survey and Specification 3. Preliminary Design 4. Detailed Design 5. Testing 6. Operation and Maintenance [pic] Result:
Thus the risk management and project plan for passport automation system was designed using Gantt Chart. EX. NO:2 c DATE: PASSPORT AUTOMATION SYSTEM AIM: To analyze and design a system for Passport Automation using Rational Rose tool. 1. PROBLEM STATEMENT To create a software system for the applicant(s), applying for the passport by verifying the information provided by them. 2. OVERALL DESCRIPTION The modules are for 1. Applicant Applicant has to provide the information like Name, Gender, Age, Qualification, Parents’ Name, Communication address, Phone no, etc. Also, they need to provide the DD details. . Passport Issuing Authority This system will verify the details provided by the applicant. And check whether the applicant is provided with passport or not. The details of the applicant are stored in the Database. 3. Database This will store the details of the applicant for future reference. 2. 1 SOFTWARE REQURIEMENTS 1. Rational Rose 2. 2 HARDWARE REQURIMENTS 1. 128MB RAM 2. Pentium III Processor 3. DESIGN 1. USE CASE DIAGRAM [pic] 3. 2 CLASS DIAGRAM [pic] 3. 2 SEQUENCE DIAGRAM [pic] 3. 3 COLLABORATION DIAGRAM [pic] 3. 4 COMPONENET DIAGRAM [pic] JAVA CODING: Database. java ublic class database { private int applicantDetails; public database() { } public void storeTheDetails() { } public void issueDetailsToAuthortiy() { } } Applicant. java public class APPLICANT { private int firstName; private int surname; private int Sex; private int DOB; private int placeOfBirth; private int district; private int qualification; private int height; private int weight; private int presnetAddress; private int permanentAddress; private int fathersName; private int mothersName; private int emailId; private int phoneNumber; private int DDNO; private int DDDATE; ublic passportIssueAuthority thePassportIssueAuthority; } public APPLICANT() { } PassportIssueAuthority. java public class passportIssueAuthority { private int authorityName; private int authorityId; private int workPlace; public APPLICANT theAPPLICANT; public database theDatabase; public passportIssueAuthority() {} public void issuePassport() { } public void verify() { } public void cancellation() { } } RESULT: Thus the UML diagrams for Passport Automation System was analyzed and designed using Rational Rose. EXNO:3 DATE:BOOK BANK 1. OBJECTIVE: a. To implement book bank system online. . To provide the students with the information on books and scheduled times of book rental available. c. To ensure validity and security in the online book bank management system. 2. SCOPE OF THE PROJECT: The book bank system project is a software tool created to help and access the students gather required information about the various books in the institution the project is web based interactive application. Focus is laid solely on the book display,schedule,categories,syllabus and payment as per required. 3. PROJECT DESCRIPTION: USER PERSONAL AND CHARACTERISTICS:
The target client for our software are students who lively are interested in rental of books be it either from engineering or medical genre in the institution. They can log into our website and browse the courses which they have aspiration to study. The student must register themselves online,which is free. The booking or reservation of the books is online,the detailed description about their book package and necessary terms and condition norms would be emailed to the students registered email address which he/she may provide during the time of registration. PRODUCT PERSPECTIVE: This product requires a web browser which is capable of playing flash media. • This program will not be dependent on any other software and is not a component of another program. • This program does not require any new hardware. 4. REQUIREMENTS: (a). FUNCTIONAL REQUIREMENTS: A functional requirement defines a function of a software system on its component. A function is described as a set of inout,the behaviour and output. i. A main menu including a brief help section. ii. Login iii. Viewing book details. iv. Displaying details. v. Maintain and update book details. vi. Logout. . REQUIREMENTS: The system should have the requirements of the project. The developer should prepare the requirements of the project. The should prepare the requirements which are need for the software. 2. ANALYSIS: Analyze the requirements whether it provides proper operations/output and performs the task. 3. DESIGN: Project manager should design the layout of the project before going to implement time allocation,cost allocation and staff allocation wil coming under design process. 4. IMPLEMENTATION: After encomposing all the diagrams,we have to generate code for each and every diagrams i. from usecase to deployment. 5. TESTING: Afteer implementing the diagram with domain language,we have to test the particular projects. 6. MAINTAINENCE: The system should be easily updated. The system should utilize the interchangeable plugins software developed should maintain the cost and time schedule of the project. (b). NON- FUNCTIONAL REQUIREMENTS: Nonfunctional requirements define the needs in terms if performance, logical database requirements, design constraints, standard compliance, reliability, availability, security, maintainability and portability. i. PERFORMANCE REQUIREMENTS:
Performance requirements define acceptable response times for system functionality. • The total time for user interface screens will take no longer than two seconds. • The login information shall be verified within the seconds. • Queries shall results within five seconds. ii. DESIGN CONSTRAINTS: The software shall be a standard system running in a windows environment. The system shall be developed using rational enterprise suite and oracle 10i database. iii. RELIABILITY: Specify the factors required to establish the required reliability of the software system at time of delivery. iv.
AVAILABILITY: The system should have an availability of 99. 99%. v. PORTABILITY: • The system should be extremely via the usb drive. • The system shall be easy to migrate or backed up via another use drive. vi. MAINTAINABILITY: • The system shall utilize interchangeable plugins. • The system shall be easily updateable for fixes and patches. (c). HARDWERE REQUIREMENTS: |1. |Processor |- |Intel Pentium IV-2. 0 GHZ. | |2. |Hardware |- |40 GB. | |3. |RAM |- |512mb | |4. |DVD RAM |- |1 nos. | | | | |(d). SOFTWARE REQUIREMENTS: | | | |1. |OS |- |Windows XP/vista. | |2. |Front end Tool |- |Rational Rose Enterprise suite. | |3. |Back end Tool |- |MSAccess | | | | | |5.
MODULE DISCRIPTION: | | | In this project we have defined different modules to enable the Book Bank system in successful manner. i. REGISTER: The register module contains the application form or registration form which contains following details. • Name, Address, Contact number, E-mail id, Password etc. ii. LOGIN: The Login module contains the form which contain membership name and member password. It includes Username and Password. iii. SEARCH BOOK:
The search book module contain list of books, from this list we search for the book which we need. This also contains another field called as categories where can select the category of the book. iv. DISPLAY DETAILS: Display the details about the students particulars, the payments, the books, rental and schedule times for books etc. v. MAINTAIN BOOK DETAILS: The administrator maintains the details of books. vi. LOGOUT: To sign off from the webpage or your account log off. 6. DOMAIN MODEL: A domain model is a visual representation of conceptual classes or real situations object in a domain. In object oriented analysis, the domain model is the most important. • It illustrates the concept in the domain. • It act as a source of inspiration for designing some software objects. 7. PARTIAL LAYERED ARCHITECTURE: Sequence diagram is an interaction overview diagram. It provides a big picture overview of how a set of interaction are related in terms of logic and process flow. This Partial layer architecture shows the interface of the sequence diagram, here the administrator shows the interface by displaying actor symbol. 8. LOGICAL ARCHITECTURE:
The Logical architecture is large scale organization of software class into packages, sub system layer, It is called logical architecture because there is no direction about how these elements are display on different operating system. 9. RISK ACTIVITY: • Personal short falls. • Unrealistic schedules and budgets. • Developing the wrong functions and programs. • Developing the wrong user interface. • Continuing stream of requirements changes. • Short falls in externally furnished component. • Real time performance short falls. • Straining computer science capabilities. RISK ASSESSMENT: Figure out what the risks are and what to focus on. • Making a list of all of the potential dangers that will affect the project. • Assessing the probability of occurrence and potential ross of each item listed. RISK CONTROL: • Monitoring the effectiveness of the strategies and the changing levels of risk throughout the project. • Techniques and strategies to migrate the highest ordered risks. 10. GANTT CHART: It describes the time schedule for the planning to complete the corresponding and after completion of core product, what the time is taken for the project action of core product. 11. POST- FUNCTION AND PRE-FUNCTION:
MODULE: Registering PRE-FUNCTION: • Login to the website. • Collection the required documents to be submitted for registration. POST-FUNCTION: • Verification of documents submitted. • Conformation email sent accessing that authentication can be prevailed for the individual. MODULE: Display book details PRE-FUNCTION: Analyze the course of semester of logger. POST-FUNCTION: Display the required book details. 12. UML PACKAGE DIAGRAM: A package diagram provides a way to group element. Here we have grouped the 6 main elements of software project grouped the in order register, login, search book.
It goes to update and sales record. A package name may be based on tab if the package shows the member of main package. 13. TECHNICAL SERVICES LAYER: Technical service layer describes the relationship between different actors, components of the software process for any admin seek the registration for new visitor. So that the new visitor can login the website and search for book and if need can buy it. 14. DOMAIN SERVICES LAYER: After technical services layer from partial layered architecture, we are going to generate the coding in java or VB the project domain is now finalized in JAVA/VB. 15. USER INTERFACE LAYER: . ADMIN: The administrator is used to register a new visitor for the website. Admin can keep those records update. Admin keep sales record i. e. , now much book is downloaded and how much book is buyed newly with copy write etc. ii. REGISTERED USER: Registered user can search the book whatever needs and can read the book in online. If user is satisfied with this book, can download the book but after payment. iii. VISITOR: The visitor can register the application form and become a member of the website. The visitor can search books and read the boook but he must register to buy or download the book.
UML USECASE DIAGRAM: Uml provides use case diagram notation to iilustrate the names of use case and author relationship between them. Use case diagram and case relationship are secondary in use case work use case text document. UML CLASS DIAGRAM: The Uml class diagram is to illustrate class interfaces as their actions. They are used for static object modeling, we have already introduced and used their uml diagram while domain modeling. UML SEQUENCE DIAGRAM: A sequence diagram illustrate a kind of format in which each object interact via message. It is generalize between two or more specialized diagram.
PARTIAL LAYER ARCHITECTURE DIAGRAM: Sequence diagram is an interaction overview diagram. It provides a big picture overview of how a set of interaction are related in terms of logic and process flow. This Partial layer architecture shows the interface of the sequence diagram, here the administrator shows the interface by displaying actor symbol UML COLLABRATION DIAGRAM: COLLABRATION diagram illustrate that object interact on a graph or network format in which object can be placed where the diagram. In collaboration diagram the object can be placed in anywhere on the diagram.
The collaboration comes from sequence diagram. UML STATE CHART DIAGRAM: A Uml state machine represents the interaction events and states of an object and behavior of an object in reaction to an event.. Transaction shown as allows labeled with their event. It is included with initial pseudo state and fins end state UML ACTIVITY DIAGRAM: A Uml activity diagram shows sequential and parallel activates in a process, work flows, data flows and compiler algorithm. UML COMPONENT DIAGRAM: Components are slightly fuzzy concept in this Uml, because both class and components can be used to model the something.
UML DEPLOYEMENT DIAGRAM: Deployment diagram shows the assignment of concrete software artifact to computational nodes. It shows the deployment of software elements to the physical elements. Deployment diagram are useful to communicate or deployment architecture. IMPLEMENTATION: After the completion of UML diagrams for BOOK BANK SYSTEM we should generate the code. Select the tools option from main menu then select the sub option program module in which we are going to generate the code in JAVA/VB/J2EE. Then go ahead and select the generate code option as a result of code generation. TESTING:
To perform the testing for the generated code again select the tools option from menu bar and choose quality architecture option a sub window gets opened. We are going to perform Unit Test and Scenario testing for our project. So, select these testing option one by one and testing activity is carried out for all the coding and testing is carried out. CONCLUSION: Thus the project for BOOK BANK SYSTEM has been successfully executed and codes are generated. STOCK MAINTENANCE SYSTEM Ex. No: 4 Date: AIM: To analyze and design a system for Stock Maintenance System using Rational Rose tool.
Problem Statement: INVENTORY SYSTEM is a real time application used in the merchant’s day to day system. This is a database to store the transaction that takes places between the Manufacturer, Dealer and the Shop Keeper that includes stock inward and stock outward with reference to the dealer. Here we assume our self as the Dealer and proceed with the transaction as follows: The Manufacturer is the producer of the items and it contains the necessary information of the item such as price per item, Date of manufacture, best before use, Number of Item available and their Company Address.
The Dealer is the secondary source of an Item and he purchases Item from the manufacturer by requesting the required Item with its corresponding Company Name and the Number of Items required. The Dealer is only responsible for distribution of the Item to the Retailers in the Town or City. The Shop Keeper or Retailer is the one who is prime source for selling items in the market. The customers get Item from the Shop Keeper and not directly from the Manufacturer or the Dealer. The Stock is the database used in our System which records all transactions that takes place between the Manufacturer and the Dealer and the Dealer and the Retailer.
USE CASE DIAGRAM : [pic] ACTIVITY DIAGRAM : [pic] SEQUENCE DIAGRAM : [pic] COLLABORATION DIAGRAM : [pic] COMPONENT DIAGRAM : [pic] CLASS DIAGRAM : [pic] DEPLOYMENT DIAGRAM : [pic] Javacoding: Manufacturer. java public class manufacturer { private int manufacturername; private int companyname; private int dateofmanufactured; private int addres; private int contactno; private int name; public dealer theDealer; public manufacturer() { } public void purchase() { } public void sales() { } } Dealer. java public class dealer { private int dealername; private int dateofitemsreceived; private int address; private int contactnumber; rivate int price; private int noofitemsordered; private int noofitemssold; public manufacturer theManufacturer; public shopkeeper theShopkeeper; public dealer() { } public void purchase() { } public void sales() { } public void showstockdetails() { } } Shopkeeper. java public class shopkeeper { private int shopkeepername; private int address; private int contactnumber; private int price; private int numberofitemsordered; public dealer theDealer; public shopkeeper() { } public void purchase() { } public void sales() { } } RESULT: Thus the UML diagrams for Stock Maintenance was analyzed and designed using Rational Rose.
Ex No: 5 Date: ONLINE COURSE REGISTRATION SYSTEM AIM: To create a system through which students can register to the courses desired by them, using Rational Rose tool. Problem statement ? The system is built to be used by students and managed by an administrator. ? The student and employee have to login to the system before any processing can be done. ? The student can see the courses available to him and register to the course he wants. ? The administrator can maintain the course details and view all the students who have registered to any course. System requirements Rational Rose Software
Use-case diagram The course registration system has the following use-cases Login View course details Registration Display details Maintain course details Logout The actors involved in the system are 1. Student 2. Administrator Use-case name: Login The user enters the username and password and chooses if the user is student or administrator. If entered details are valid, the user’s account becomes available. If it is invalid, an appropriate message is displayed to the user. Use-case name: View course details In this use case, a student can search all the courses available to him and choose the best course he wants.
The student can view the course duration, faculty and department of the courses he may choose. Use-case name: Registration When a student has successfully chosen a course, he can register to that course. Upon registration, the student’s details are stored in the database. Use-case name: Display details After registration to any course, the student may see the details of his current course. He may wish to know details about fees and other information. The administrator also has the privilege to display details of the the students and the corresponding course for which they have registered.
Use-case name: Maintain course details The administrator has to perform the duties of maintaining the course details. Any change to the course structure is maintained by the administrator. Use-case name: Logout After all the desired transactions are made, the user may choose to logout from the system to save all he changes they have made. Use-case diagram for course registration system [pic] Class diagram The class diagram is a graphical representation of all the classes used in the system and their operations, attributes and relationships. The course registration system makes use of the following classes: . Stud(student details) 2. Administrator 1) Stud It consists of the details of all the students present in the database. The attributes present in this class are student id, password, name, age, sex, course and attendance. The object of this class is created as soon as the student registers to a course. The operations available to this class are login (), logout (), confirmation (), register (), and view course details (). 2) Administrator It consists of details of all the courses available to the student.
The attributes present in this class are username, password, course fees, fees due, marks, and attendance. The operations available to this class are login (), logout (), ma course details (), display course (), and confirmation (). Class diagram for course registration system [pic] Sequence diagram Sequence and collaboration diagram for login to the system [pic] [pic] Sequence and collabaration diagram for logout [pic] [pic] Sequence and collabaration diagram for registration to a course [pic] [pic] ACTIVITY DIAGRAM : [pic] JAVA CODE: Public class stud { Private int sid;
Private string passwd; Private int age; Private int sex; Public admin; Public stud() { } Public void logout() { } Public void confirm() { } RESULT: Thus the Online course registration system was designed and analyzed using Rational Rose. Ex No: 6 Date: ONLINE TICKET RESERVATION SYSTEM (E – Ticket) AIM: To analyze and design a system for Online Ticket Reservation System (E – Ticket) using Rational Rose tool. 1. PROBLEM STATEMENT To book a ticket for a user online ticket reservation system software and to confirm the ticket booking, making the payment, printing the tickets has to designed using Rational Rose tool. . OVERALL DESCRIPTION 1. LOGIN • Before entering the system, users have to login • Get the username and password from existing users. • Give new users the option to sign up. 2. AVAILABILITY • Get the source and destination. • Provide a dropdown box for the date. • Check availability of tickets. 3. RESCHEDULE • If tickets are available, get the number of passengers. • Get the name and age of all passengers. • If tickets are not available, reschedule. 4. PAYMENT DETAILS • Print the cost of the tickets. • Get the payment details from the user. • Confirm the details and the ticket. Display confirmed ticket to the user. USECASE DIAGRAM [pic] ACTIVITY DIAGRAM [pic] CLASS DIAGRAM [pic] SEQUENCE DIAGRAM [pic] COLLABORATION DIAGRAM [pic] STATE CHART DIAGRAM [pic] COMPONENT DIAGRAM [pic] DEPLOYMENT DIAGRAM [pic] Javacoding: Customerdetails. java public class customerdetails { private int name; private int address; private int email; private int age; public booking theBooking; public customerdetails() { } public void book() { } } Booking. java public class booking { private int booking_no; private int date; private int total; private int status; private int name; public payment thePayment; ublic booking() { } public void pay() { } } Payment. java public class payment { private int date; private int amount; public payment() { } } RESULT: Thus the Online Ticket Reservation System have been designed and verified using Rational Rose Tool. Ex No:7 Date: SOFTWARE PERSONNEL MANAGEMENT SYSTEM AIM: To analyze and design a system for Software Personnel Management System using Rational Rose tool. 2. PROBLEM STATEMENT To compute the gross pay of a person using the software personnel management system software and to add new details to the existing database and update it, using Rational Rose tool. . OVERALL DESCRIPTION The three modules are 1. Login The employee details has to be entered and if needed the details can be edited. 2. Pay slip It contains details such as employee id, employee name, department, experience, and basic pay. 3. View Updated database would be present. The details of the employee can be used for further reference. 2. 1 SOFTWARE REQURIEMENTS: 1. Rational Rose 2. 2 HARDWARE REQURIMENTS: 4. 128MB RAM 5. Pentium III Processor 3. DESIGN USECASE DIAGRAM [pic] CLASS DIAGRAM [pic] SEQUENCE DIAGRAM [pic]
COLLABORATION DIAGRAM [pic] SEQUENCE DIAGRAM [pic] COLLABORATION DIAGRAM [pic] ACTIVITY DIAGRAM [pic] JAVA CODING: PAYROLLLOGIN. JAVA public class payrolllogin { private int enterdetails; private int editdetails; public payslip thePayslip; public viewdetails theViewdetails; public payrolllogin() { } public void exit() { } } VIEWDETAILS. JAVA public class viewdetails { private int eid; private int ename; private int dept; private int exp; private int basicpay; private int hra; private int da; private int bpf; private int gpay; public viewdetails() { }