CHAPTER 1 INTRODUCTION 1

CHAPTER 1
INTRODUCTION
1.1 Project Description
Indian Career Zone (ICZ) is a stage for understudies and additionally work searcher. We are here to enable each one of the individuals who to require work. ICZ is an instructive preparing area with an attention on test prep fragment and furthermore helps fresher and experienced land position. ICZ gives data, counsel the way to enable you to settle on choices on analysing the hang of, preparing and work openings. The administration offers secret and unprejudiced guidance. This is bolstered by qualified professions guides. ICZ is giving the most forward and important direction

materials to those requiring or giving vocation direction. Profession Guidance encourages individuals for the duration of their lives to deal with their own particular instructive, preparing, word related, individual, and social and life decisions so they achieve their maximum capacity and add to the advancement of a superior society.
We assist you with vocation choices and arranging as said and furthermore persuade you to execute your arrangement of activity, empower you to sort the best utilization of top notch profession related apparatuses.

Our master consultants are proficient, excited and give free help. They intend to enable you to make your own precise aptitude and learning decisions. They hand you through the data, advice, then bearing you have to support you near yield resistor of your culture and occupied life.
The major users of the application are:
1. End Users
2. Admin
3. Recruiters
User needs to enlist first before signing in, after the login to the site client can scan and apply for employments by transferring their CV, client can comprehend the activity showcase, look for courses and preparing plans, can take up the online instructional exercises and can take up the test for their accepted procedures.
Admin will move and propel the client, administrator will transfer the data, exhortation and direction that assistance to take control of learning and working, the occupations and the organizations that that are contracting with the end goal of employments and temporary jobs for applicant experience will be refreshed by the administrator in light of the selection representatives’ recommendation.
Recruiters are easy to understand for every regulatory need. The capacity is to post occupations that are accessible on sites and other employment board, Recruiter will house all information required for enlistment purposes, Access and rank all candidates, occupation and candidate following, likewise offers a timetable to help with talking and Report generator.
1.2 Company Profile
Snycon is a worldwide expanded outsourced IT administrations and arrangements organization. Since 2009, we are helping our customers to accomplish their business targets by effectively outsourcing their non-centre business forms and conveying undertaking arrangements. Snycon executed various commitment for different customers by utilizing our kin, procedures and innovation to launch our customers to accomplish their business potential.
Snycon has earned an ISO: 9001-2008 and qCMMI Level IV accreditation. At its centre, this accreditation implies that all customers can depend on us to perform with consistency and quality. We additionally got grant for being the quickest developing India Company by International Achiever’s Conference (IAC).
We have huge involvement in seaward outsourcing and have developed into a tried and true outsourcing accomplice giving significant esteem and reserve funds to our customers.
Snycon is driven by exceedingly qualified and capable experts who hold many years of consolidated involvement in various industry territories. Each worker of Snycon comprehends the noteworthiness of conveying the chief quality administration and has the astuteness and the enthusiasm that are extremely essential for the accomplishment of our customers’ business.
The advisors at Snycon are had practical experience in concentrating on customer necessities and guarantee operational perfection. Our specialists, alongside other individual from Snycon group, are resolved to convey the head quality administration with unparalleled individual consideration that every single customer expects and merits.
Snycon has a portion of the best experts in Technology Consulting and undertaking arrangements. We will likely hold them and give the sharpness that gives them the edge in the business. By being a dynamic and rising business element, we will make an enthusiastic situation for our kin. This renders them the chance to sustain. By addressing customer needs and making a requesting situation for our kin, we will make a place for ourselves in the commercial centre. It is our undertaking to end up a considerable business substance and have worldwide nearness.
Technical Details about the Services we offer
JAVA/J2EE
• We help fabricate programming arrangements utilizing Java/J2EE innovation with arrangement draftsmen and multi-capable programming engineers, who create and incorporate world class, standard demonstrated programming advancement strategies and huge structural practices in building superior, cross-stage arrangements, which improves the efficiency of your association.
• We have great database of rich experience levels in web improvement structures and advances, for example, Struts Framework, Net Beans, Web Services, SOA, Hibernate, XML, JSF, Eclipse, Spring Framework and AJAX.
• We have a solid mix of Java Certified Professionals, who have created and incorporated world class programming arrangements.
• We leverage our SUN partnership and expertise of SUN certified architects and developers for providing following key benefits to our customers:
o Reduce the development costs and risks.
o Enhance quality of applications, development processes, tools and techniques.
o Achieve faster time to market with shorter development cycles.
o Strengthen ability to meet service-level commitments.
o Leverage proven SUN architectural best practices, methodology, patterns, emerging programming and coding standards ; frameworks.
o Evaluate and study open-source technologies to be used in application architecture for reducing total cost of ownership (TCO) for the JAVA/J2EE based solutions.
• The application will be open, inter-operable, highly scalable and capable of delivering high-performance in varied field conditions.

Best services for writing your paper according to Trustpilot

Premium Partner
From $18.00 per page
4,8 / 5
4,80
Writers Experience
4,80
Delivery
4,90
Support
4,70
Price
Recommended Service
From $13.90 per page
4,6 / 5
4,70
Writers Experience
4,70
Delivery
4,60
Support
4,60
Price
From $20.00 per page
4,5 / 5
4,80
Writers Experience
4,50
Delivery
4,40
Support
4,10
Price
* All Partners were chosen among 50+ writing services by our Customer Satisfaction Team

Skill Expertise
Operating Systems Windows Server, Windows Mobile, Linux, Unix
Network, System ; DB Administration Network Cards, Management Studio, PRTG, WhatsApp Gold, VNC
Databases Oracle 9i/10G, SQL Server 2005/2008, MySQL
Languages C, C#, ASP.NET, VB.NET, VC++, Java, J2EE,
Middleware Drupal, Joomla, MOSS 2007, AJAX, Visual Source Safe, SVN
Products CMS, DMS, BPM, ERP, CRM, HIMS
Java Framework and Technologies Hibernate, Ajax, Springs, Struts, JSF
Other Dreamweaver, XHTML, CSS, Flash: ActionScript 2.0, Photoshop, iReports, Crystal Reports 10.0, Load Runner, QTP, Test Director, Bugzilla

Our Work Methodology
• Consulting and Requirement Gathering
• Project Analysis
• Project Design ; Planning
• Project Development ; Management – Phase 1 and Phase 2
• Quality Control and Testing
• Implementation and Post implementation process.

CHAPTER 2
LITERATURE SURVEY
2.1 Existing System
The present framework encourages you in looking occupations in light of the instruction and courses. In any case, they don’t offer the learning and preparing reason for the understudies or applicants with other openings for work. You may be miserable in your present place of employment and prepared for change, however not certain what. You may have been out of work for some time and searching for work chasing tips.
2.2 Proposed System
This System gives the best employments, enable you to comprehend the activity showcase, look for courses and preparing plans, help and support in learning, distinguish your key qualities and abilities, investigate your vocation alternatives, pick preparing courses that fit your way of life, build up an activity design this can enable you to accomplish your objectives, allude you to other valuable associations.
2.3 Feasibility Study
Feasibility consider is the most basic segment of any endeavour. Absolutely cognizance of what the wander passes on the achievement of the endeavour. The breaking point of the necessities of the endeavour should be same or should be changed steadily.

In this stage the common sense of the endeavour is being settled and the signs are put encourage with the help of general arrangement of the wander where a couple of calculations start happening. We need to check with each one of the states of the assignment which should fulfil when the system is being penniless down. For this study to be made there are a segment of the crucial concentrations are to be arranged which are noteworthy necessities for the endeavour.
There are three important feasibilities of the project:
• Economic Feasibility
• Technical Feasibility
• Operational Feasibility
Economic Feasibility
This inspects to upheld and confirm a business impact which powers to have on the Association. Sums the entire supply of that gathering can put into the examination and the advance of the plan are controlled. The working expense are to be satisfactory Therefore the plan which has been done in the last stage and furthermore inside the aggregate cost and this can be done in light of the fact that a large portion of the advances are accessible uninhibitedly which are utilized and just the tweaked items are to be obtained.

Technical Feasibility
The specialized investigation necessities are occurred in this stage. Any framework that is being enhanced ought not have a colossal request on the specialized property which are accessible. This adviser for awesome prerequisites on the specialized assets which are accessible. The framework which is created must have an indeterminate need, as a base or no different changes are important for the product program execution.
Operational Feasibility
The state of this learning is to affirm the acknowledgment phase of the framework by the client. This includes the course of how the specialist utilizes the framework. The customer ought to be expectation of the necessities given in the framework. The endorsement level of the customers is diverse in view of the strategies who are included to influence the client to find out about the framework and to make him alarm about the framework. The certainty level of the client must be critical with the goal that he is additionally able to roll out some gainful improvements as he is the client who utilizes the framework. It is an important programming generation for the corporates. It helps in saving the inward points of interest of the organization online which can be gotten from anyplace.
At long last, we have to confirm again with the goal that all the client necessities should coordinate the portrayal of the venture and there is no contention of the prerequisites which is being assembled as of now.

2.4 TOOLS AND TECHNOLOGIES USED
The programming languages that are being used to develop this application are:
• HTML
• CSS
• JAVASCRIPT
• MYSQL
• HIBERNATE

HTML
HTML is the standard Markup language for creating Web pages.
? HTML stands for Hyper Text Markup Language
? HTML describes the structure of web pages using Markup.
? HTML elements are the building blocks of HTML pages
? HTML elements are represented by tags.
? Web browsers receive HTML documents from a web server or from local storage and render the documents into multimedia web pages. HTML describes the structure of a web page semantically and originally included cues for the appearances of the document.
CSS
CSS remains for Cascading Style Sheets, it is a template dialect utilized for depicting the introduction of a report written in Markup dialect like HTML CSS is a foundation innovation of the internet. CSS is intended to empower the partition of introduction and substance, including design, hues, and text styles. The CSS is kept up by the World Wide Web.
JavaScript
JavaScript is a lightweight, interpreted programming language. It is designed for creating network-centric applications. It is a complimentary and integrated with java. JavaScript is easy to implement because it is integrated with HTML. It is open and cross-platform. JavaScript extends its features with jQuery, AJAX, AngularJS, JSON, NodeJS, BackboneJS and so on.
MySQL
MySQL is an open source social database administration system(RDBMS) in view of Structured Query Language(SQL). SQL is the most well-known dialect for including and overseeing content in a database. It is most noted for its fast preparing, demonstrated dependability, simplicity and adaptability of utilization.
A database is an alternate application which can store a huge gathering of actualities. It can be utilized as a part of making, getting to, recovering and looking of information in a database. RDBMS helps in putting away colossal information which can be spared into divergent tables and relations are being set up utilizing Primary keys and remote keys.
Hibernate
Hibernate is framework. It is ORM tool Object Relational Mapping used to connect to database. It has a Connection Pooling that is database connection established at the first run itself, it can be created once. It does not throw any type of checked exceptions. It automatically closes the connection. The Query in database is Independent. Hibernate it has 2 types of mapping:
• Inheritance mapping
• Collection mapping
Hibernate not only takes care of the mapping from java classes to database tables, but also provides data query and retrieval facilities.

2.5 Hardware and Software Requirements
Hardware Requirements
Hardware type Specification
Computer processor Pentium-IV or above
Computer Hard disk 80 GB or More
Computer RAM 2 GB – Minimum and Above
Speed 2.3 GHZ.

Software Requirements
Operating System–OS Windows 7 or above
Application Server– Apache WAMP
Front-End – Design Screens HTML, CSS, Bootstrap, JSP
Database SQL using Hibernate Framework
Backend Language JAVA
Editors/ Tools Eclipse

CHAPTER 3
SOFTWARE REQUIREMENT SPECIFICATION
3.1 Users
Customer needs to select first before marking in, after the login to the webpage customer can check and apply for livelihoods by exchanging their CV, customer can appreciate the movement publicize, search for courses and planning designs, can take up the online instructional activities and can take up the test for their acknowledged strategies.
Administrator will move and inspire the client, administrator will transfer the data, exhortation and direction that assistance to take control of learning and working, the employments and the organizations that that are procuring with the end goal of occupations and entry level positions for applicant experience will be refreshed by the administrator in view of the spotters’ recommendation.
Enrolment specialists are easy to use for every authoritative need. The capacity is to post occupations that are accessible on sites and other employment board, Recruiter will house all information required for enlistment purposes, Access and rank all candidates, employment and candidate following, additionally offers a timetable to help with meeting and Report generator.
3.2 Functional Requirements
The utilitarian prerequisite of a framework portrays the exercises that the framework gives which is pervasive as indicated by the client’s necessities. It relies upon which sort of utilization or programming that is being created. The utilitarian prerequisites portray the framework work in detail.
The application ought to have the capacity to satisfy every one of the prerequisites gave by the client and should work proficiently. This application is restricted and keeps up protection by giving a login id and a secret word with the goal that this application can’t be gotten to by different clients. Requirements of an application which are determined functional for its modules describe objective of software which demands being more stable. Requirements include technical, non-technical, financial, data management, business logics, validations, database interactions etc…
The functional requirements contain the data which is registered into the system, operations that are executed in each screen, work flow performed by the application, system reports and other applications. The requirements should be provided such that it is apparent even by the common users.

Login: The clients of the application can login by utilizing the gave User Id and Password and side tracks it to the Home Page of the client. The login falls flat if the client has entered invalid username or secret word or if the client has not selected before signing in to the framework.
Home Page: The landing page incorporates every one of the tasks of the client where he can include, erase, refresh and see data where for just specific exercises the consents are being given by the administrator will be showed up in his landing page.
Update/ Edit: The client can refresh/alter his profile at whatever point he needs to roll out the fundamental improvements in the application.
Logout: The clients can logout from any page through which page he is getting to.

3.3 NON-FUNCTIONAL REQUIREMENTS.

Non-Functional necessity gives the clarification of the confinements of the framework’s I/O gadgets and the information portrayals that is being utilized as a part of the framework’s interfaces and how a framework ought to be. With regards to a crisis to meet a solitary fundamental need it might annihilate the whole prerequisite and this falling flat can make the entire framework unusable. This application is ok for each sort of its clients. At the point when a client logs out from any session no one else will have the capacity to get his profile without knowing his secret key. The database utilized here is quick, solid, powerful with the goal that clients might not need to sit tight for the yield for quite a while.
Non-Functional necessities characterize about the characteristics of the framework. Security and Usability of the framework can be tried when it is executed.

Performance:
Execution of this application incorporates time administration, getting to of documents effectively, keeping up the records, transferring and downloading records simple which should be possible by any regular client. The real execution of the application can encounter when it is being executed.
Reliability:
It tells how regularly and when and in what conditions the product falls flat. For instance, when the server ends up occupied the application turns out to be ease back in reacting to the client. In spite of the fact that the application turns out to be moderate the information isn’t misused.
Maintainability:
This application can be utilized for quite a while by different clients. The outline of the framework ought to be founded on the modules and if there are any progressions done to the modules ought not influence the task of the application created.
Portability:
There is a great deal of exertion associated with moving any application to an alternate stage. The modules that are being produced ought to be perfect with every one of the stages. This application can be utilized for windows 7 or later forms.

CHAPTER 4
SYSTEM DESIGN
4.1 System Perspective
Programming Engineering is a standard which contains an arrangement of techniques, methodology and devices that is utilized to build up a product. The improvement of programming is ordinarily delineated by an arrangement of stages showing the different capacities that comprises during the time spent advancement. The framework configuration shows the useful component that is expected to fabricate an item. Framework Perspective is only depicting the framework all in all which incorporates its functionalities and exhibitions of the framework.
This stage is the initial phase in invigorating to the arrangement from the degree of issue. It incorporates the imperative sources of info and reports. The outline step goes about as the arbiter between the phases of usage. The result of this stage is a total outline of the archive. In framework perspective one ought not consider the framework as a protected substance. The framework point of view includes the communications and the connections between the earth and the framework.
The significance of the Software Development Life cycle is translating and overhauling of the prerequisite into code. In this procedure they distinguish which modules and subsystems are essential and proclaim how they relate or convey.

4.2 CONTEXT DIAGRAMS

• It is the illustration of flow of information.
• It is used to create an outline of the application.
• It depicts what is the input and output of the system and where data will be stored.

Fig 4.2.1 Context Diagram of the Application

CHAPTER 5
DETAILED DESIGN
5.1 USECASE DIAGRAMS
• Use case defines the exchange of message between the Actor and the System.
• Here an Actor represents an organization, a person or a computer program.
• Use case diagrams are used to gather the requirements of the system.
• It defines the outer view if the System.
• With the help of use case diagrams, the Requirements of the system are observed and recognized.
: Guidelines of the Use Case Diagram
? Determine the system.
? Actors are focused.
? Each use case provide value to users.
? Relate use case and actors.
? Remember that use cases are informal.
? Use cases can be structured

Fig.5.1.1 Use Case diagram of Admin

Fig.5.1.2 Use Case diagram of Recruiter

Fig.5.1.3 Use Case diagram of User/Jobseeker

5.2 SEQUENCE DIAGRAM
It is the diagram which presents the transmission between one another and flow of information.
• It represents the interplay between the objects.
• It represents the sequence of messages which are exchanged between the objects and carry out some operations.
• The parallel vertical lines represent the Lifelines and the horizontal lines represent the messages which are being switched from one another.
• Event Diagrams and Event Scenarios are also called as Sequence diagram.
Fig.5.2.1 Sequence diagram of Admin

Sequence Diagram(Recruiter)

Fig.5.2.2 Sequence diagram of Recruiter

Sequence Diagram (User/Job Seeker)

Fig.5.2.3 Sequence diagram of User

5.3 Activity Diagrams
• An activity diagram shows the flow from activity to activity.
• An activity diagram shows the flow of an object, how its role, state and attribute values changes.
• Activity diagrams is used to model the dynamic aspects of the system
• Activities result in some action (Action encompass calling another operation, sending a signal, creating or destroying an object, or some pure computation, such as evaluating an expression).
• An activity diagram is a collection of vertices and arcs.
• Activity diagrams commonly contain Activity states and action states. Transitions, objects.
• Activity diagrams may contain simple and composite states, branches, forks and joins. The initial state is represented as a solid ball and stop state as a solid ball inside a circle.

Fig.5.3.1 Activity diagram of Admin

Fig.5.3.2 Activity diagram of Recruiter

Fig.5.3.3 Activity diagram of User/Jobseeker
5.4 E-R Diagram
An Entity Relationship Diagram (ERD) is a visual representation of different entities within a system and how they relate to each other.
? They are also known as ERD’s or ER models.
? ER Models in Database Design
They are broadly used to outline social databases. The substances in the ER diagram move toward becoming tables, qualities and changed over the database blueprint. Since they can be utilized to envision database tables and their connections it’s normally utilized for database investigating also.
? ER diagrams in software engineering
Element relationship outlines are utilized as a part of programming building amid the arranging phases of the product venture. They help to distinguish diverse framework components and their associations with each other. Usually utilized as the reason for information stream graphs or DFD’s as they are generally known.
ER Diagram Symbols and Notations

Fig.5.4.1 Elements in ER diagrams

5.5 Database Design

5.6 Class Diagram

CHAPTER 6
IMPLEMENTATION
The means of the task where the synopsis design into an execution protest is Implementation. The procedure of execution ought to be precisely made and outlined so that there is no equivocalness which may misdirect the clients. Usage incorporates each one of those exercises that makes the framework to be adjusted and remodelled identified with the old framework. The new framework which is being actualized replaces the genuine framework with greater profitability and solid as indicated by the clients’ prerequisites. The way toward deciding an undeniable framework into its genuine utilize is called as System Implementation. The framework is being actualized simply after the exhaustive testing done on the framework so it is working reliably with the clients’ prerequisites. The most critical level of the usage is making the new thriving structure of the undertaking and conveying certainty of the new framework for the client which will work skilfully and effectively. It incorporates appropriate arranging, the survey of the present framework that is executed, its constrainments on usage and plan that is actualized.
The implementation phase involves the following:
• Appropriate planning
• Examining the system and its conditions.
• Estimating the transition method.

The framework is lawfully tried and in the meantime clients ought to be qualified on the most proficient method to utilize the framework. The current framework has been executed by numerous cutting edge similarity and characteristics.

6.1 Screen Shots
6.1.1 Home page

6.1.2 About page

6.1.3 Contact page

6.1.4 Register and login page

6.1.5 Education program page

6.1.6 After Login

6.1.7 Fresher Resisteration form

6.1.8 Tutorials list page

6.1.9 Tutorials page

6.1.10 Online training page

6.1.11 Online Test list page

6.1.12 Pratice papers page

6.1.13 Experience register page

6.1.14 Testing Programs

6.1.15 Tutorial site page

6.1.16 Tutorial page

6.1.17 Sign Out page

CHAPTER 7
SOFTWARE TESTING
Programming testing is a procedure of expelling the product blunders from an application. It is a condition of approving or confirming the product application or an item. It gives an alternate sight of the product which empowers you to take in the dangers taken amid programming usage. The way toward Testing is only deciding the blunders in an application. It is the significant action amid the product improvement. The program is being performed by utilizing a few experiments and utilizing these experiments the yield of the program is assessed to check if the application is working as indicated by the client necessities or not.
Programming testing is the most essential action that shows the last examination of plan and code age.

• Unit Testing.
Unit testing delineates out its activity with respect to an unmistakable programming called module. This testing sets up to confirm the product that is created. Unit testing analyses for the nitty gritty plan and aides in recuperating the mistakes inside the module. Here each and every component is being tried to avow that the application works appropriately. Every basic segment is being tried independently. Every revelation in the module is executed at any rate once and guarantees that the mistakes are approved.
• Module Testing
Module is an arrangement of units which is isolated and is utilized to make a compound structure which is illustrated with an arrangement of question class and different prerequisites like capacities and techniques.
• Subsystem Testing
This stage contains testing the arrangement of modules which has been joined into subsystems. Subsystems can be especially composed and performed. On the off chance that the subsystem interface is despicable there happens a massive issue in the extensive programming frameworks.
• Integration Testing

INTEGRATION TESTING is a level of programming testing where singular units are joined and tried as a gathering. The reason for this level of testing is to uncover blames in the association between incorporated units. Test pilots and test stubs are utilized to aid Integration Testing.

• Validation

Approval is a procedure of testing application over wrong sort of information sources. At the point when an uncalled for input is given by the client it illuminates the client to give the best possible information sources, approval is required. Approval is constantly tried over the invalid sort of information sources.

• Test Plan
The test design begins with the strategy of Testing. This test design demonstrates all the related testing exercises that must be refined and characterizes the calendars, shares the assets and practices the testing rules. Amid testing the specific experiments are finished and the normal outcome is contrasted and the genuine outcome. The last finish of the testing stage is the mistake report and the test report.

• Test Data
The primary reason here is to test the different useful prerequisites which is indicated in the Software Requirement Specification.
• Test Report
The test reports give data about the information being enlisted in the structures with the predetermined experiments and to check whether the structures are working appropriately.

Testing
Test ID Test Case Purpose Result Expected Output
(Pass/Fai)
1 Run the application Launching the Application Resulting in launching the application Pass
2 Sign in with user Register with new user Register successful and Login Pass
3 Check for valid email id and password Login with registered user Login failed. Throwing error and remains in the same form with proper error messages
Fail
4 If login id and password is not valid Login again with registered user Login successfully and checking the links Pass
5 Check for the module links and programs After the login the links has to be checked for the next programs Access to links successfully Pass
6 Check Education program For the purpose of learning Links and tutorials has to be accessed for studying Pass
7 Check the Career programs The jobs links has to be verified for registration Successfully the career programs has been verified Pass
8 Verify Fresher If fresher the register as fresher and login Successfully registered and login Pass
9 Verify Experience Checking if the user is experienced and register his/ her details for the career purpose Registered and jobs has been specified on particular company and dates are been issued for interview Pass
10 Verify tutorials and Online testing The users checking the materials for studying purpose and taking online tests to prepare for themselves. Successfully checked and maintained the services Pass
11 Verify the Java tutorial Java website is checked to study by user Java is seen learned through online Pass
12 Verify C++ tutorial C++ is checked by the user Those are fetched and learned Pass
13 Verify Other languages The languages like core java, hibernate, springs, c, Frameworks all are been checked and tested All the subjects are fetched from database and through other online links , It gets tested and fetched successfully Pass
14 Logout Logout if the user is no more needed the website. Successfully Logged out Pass

CHAPTER 8
Conclusion

We know that everyone has the ability and potential to develop and grow in their lives and careers. We also understand that sometimes things get in the way and can hold you back.

Our Aim :

1. Help you with career decisions and planning
2. Support you in reviewing your skills and abilities and develop new goals
3. Motivate you to implement your plan of action
4. Enable you to make the best use of high quality career related tools.
5. Have you been made redundant and are unsure of your next move? Are you returning to work from time out? We can help.
Career adviser can help you with:

1. Develop your CV
2. Search and apply for jobs
3. Understand the job market
4. Search for courses and training schemes
5. Find funding to support any learning
6. Identify your key strengths and skills
7. Explore your career options
8. Choose training routes that fit your lifestyle
9. Develop an action plan – this can help you achieve your goals
10. Refer you to other useful organisations.

CHAPTER 9
Future Enhancement
This project is completed but still they want to update and modify some modules. We are always thinking about Guest requirements also growing day by day. We always want implement something more. This project is completed when you watch, but we want to implement more things.
We will add new future like User is easily cancel Registered.
We will provide user can cancel event in 24 hours of booking.
We will also provide Different Types of Packages. Such like Royal,
Classic, Basic Package, etc…

CHAPTER 10
BIBLIOGRAPHY
REFERENCE BOOKS:
J2EE the complete reference – James Edward Keogh
Java Servlets and JSP – Mike Murracho ; Associates
Hibernate – Orielly
REFERENCE WEBSITES:
• www.journaldev.com
• www.javatpoint.com
• www.sanfoundary.com
• www.w3schools.com
• www.stackoverflow.com

CHAPTER 1 INTRODUCTION 1

CHAPTER 1
INTRODUCTION
1.1 BACKGROUND
Security tactics are a useful tool that can help people immediately to start reasoning about secure software design 1. A security tactic is a design concept that addresses a security problem at the architectural design level. In particular, incorrect implementation of security tactics or the deterioration of security tactics during coding and maintenance activities 2 can result in vulnerabilities in the security architecture of the system, refer to these vulnerabilities as tactical vulnerabilities. The correct implementation of”Manage User Sessions” tactic in a web application would allow the system to keep track of users that are currently authenticated 3. Once the user authenticates him/herself with this forged session identi?er, the attacker may be able to steal his/her authenticated session. The architects have used the “Manage User Sessions” tactic in the architecture design of the web application, the developers have failed to implement it correctly. Therefore, here conduct a deep study about the vulnerabilities related to security tactics.

User authentication is a process that allows a device to verify the identity of someone who connects to a network resource. There are many technologies currently available to a network administrator to authenticate users 4. The actor authentication is performed in all human with computer interaction and they can automatically logged in. The Authentication means, it authorizes client to server interactions on every networks to allow access control to network and Internet connected systems. In many systems, user authentication has typically considered as a simple user ID and password combination.
If an actor authentication is not implemented strictly, the attacker can steal the user information and act as a user by providing identical requests to the application. So here introducing MVC new framework to monitor the security issues to the application developed while or after the execution. Validation detection and access control specification are the two methods used here to solve the basic issues. The model, view and controller (MVC) is an architectural pattern, that could separate an application into three main components: the model, the view, and the controller 7. All of these components are able to handle specific development theme of an application. To create an extensible project, one of the most frequently used web development framework is MVC.

1.2 RESEARCH PROBLEM
For security of interactions, access control specifications includes the authorization, authentication and an entity trying to gain access. Access control models depends on the user. The thing is, the client or user is the one trying to gain access to the application or the software. In many systems, an access control list is there, that contains a list of permissions and it know about to whom these permissions apply. Such kind of data can be viewed by some specific people and not by others and is controlled by access control. It permits an administrator to protect information and set some rules as to what information, who can access it and at what time it can be accessed.

Best services for writing your paper according to Trustpilot

Premium Partner
From $18.00 per page
4,8 / 5
4,80
Writers Experience
4,80
Delivery
4,90
Support
4,70
Price
Recommended Service
From $13.90 per page
4,6 / 5
4,70
Writers Experience
4,70
Delivery
4,60
Support
4,60
Price
From $20.00 per page
4,5 / 5
4,80
Writers Experience
4,50
Delivery
4,40
Support
4,10
Price
* All Partners were chosen among 50+ writing services by our Customer Satisfaction Team

The input validation is considered as one of the older method to provide security as authentication. The correct testing for of any input that is supplied by someone else. This is the concept of input validation. All applications require some type of input. User inputs could come from different sources, or any number of other sources. The malicious users is not going to announce that, they are going to attack our software or application. This stands to reason that all input should be checked and validated, because people do not know exactly who or what is giving to the software or application as input to process. Applications and software should check all input entered by a user or coming from anywhere, but this is not the only time that input should be checked.
Web applications created by frameworks, one of the important framework is named as MVC new framework. It can detect logical errors in software development life cycle and it is a part of artificial intelligence. Mainly this framework focus on input validation such as SQL injection or file injection and access control issues such as spoofing.

1.3 SCOPE AND OBJECTIVES
There are several scopes and objectives for the system
Deep study about the type and impact of vulnerabilities related to security tactics
Application , that load our system and can identify the problems
Allows the access control with a proper authentication.

Identification of vulnerability type.

Tactic related vulnerability fixing
Input validation
Authentication
CHAPTER 2
LITERATURE SURVEY
A security tactic is a design concept that addresses a security problem at the architectural design level. Architectural security tactics are used for resisting, detecting and to recover from many kinds of attacks. Software architects often adopt some security mechanisms for this purpose. Consequently, ?aws in the implementation of security tactics or their deterioration during software evolution and maintenance can introduce severe vulnerabilities that could be exploited by attackers. Then refer to these vulnerabilities as tactical vulnerabilities. This shows that, a programmer does not have an idea about the types and also the impacts of vulnerabilities. So here conduct a deep study about the types and effects of vulnerabilities.

Software architectural specifications using SAM is a concept, in which SAM is considered as a framework based on two concepts called Petri nets and temporal logic. SAM software architecture can be analysed using one technique called symbolic model checking with tool Symbolic Model Verifier. SAM supports just formal analysis in many techniques. Security Code Review involves: Make sure you know what you’re doing, prioritize and Review the code. UML metamodel level, it will allows tool developers to build support for creating patterns and for checking conformance to pattern specifications. The pattern specification techniques to support practical and rigorous pattern based model transformation techniques. In dynamic rule space, software architectures should be viewed and analysed as multi-layered overlapping DRSpaces, it might be able to identify a large number of structural and evolutionary problems.
Architecture design methods, such as ADD,it describes an idealization of how architects perform their duties. The frameworks might generate new requirements .This shows a principled way to use frameworks in the architecture design. Two novel hotspot patterns used here is, Unstable Interface and Implicit Cross-module Dependency. It is based on Baldwin and Clark’s design rule theory, for the automatic detection of architectural issues. These patterns could identify the most error-prone and change-prone files, they also point out specific architecture Problems. In an architecture centric approach, it may focuses entirely on the design decisions, when doing this analysis does not require access to the source code, just a knowledge of the structural and historical relations between files. A machine learning approach is here for discovering and visualizing architectural tactics in code. Mapping these code segments to Tactic Traceability Patterns, and monitoring sensitive areas of the code for some modification events.

TECHNIQUES TO IDENTIFY SOME VULNERABILITIES
Archie is having some responsibility like detection of architectural tactics such as heartbeat, resource pooling, and role based access control (RBAC) in the source code of a project. Archie needs to construct a traceability links between the tactics., Archie’s primary contribution is in the area of architectural preservation through detecting and tracing architectural concerns. The method of systematic review is applied with the purpose of identifying, extracting and analyzing the main proposals for security ontologies. The main identified proposals are compared using a formal framework.

Next is, various recent developments in the area of design level vulnerabilities are reviewed. Future research directions are proposed, which can be used by the researchers for further extension of their research in the area of securing a software design 9. A semantic template for each type of vulnerability is created from information in the Common Weakness Enumeration dictionary. Next, known vulnerabilities and related concepts in the repository are tagged with concepts from the template and done a comparison process.
Attack based approaches are based on knowing the enemy and assessing the possibility of similar attacks. Although the taxonomy proposed here is incomplete and imperfect, it provides an important ?rst step. It focuses on collecting well known or common errors and explaining them in a way that makes sense to programmers. This new taxonomy is made up of two distinct kinds of sets, which are stealing from biology named as a phylum and a kingdom.

Other approaches to software security including penetrate ; patch, secure operational environment, and secure software engineering. It is clear that early detection of security problems and countering them in the software development cycle will save time and energy spent on removing flaws after software release. A variation in anyone of these approach causes misuse detection. The state transition analysis, by using pattern matching can detect system attacks. Knowledge about attacks is represented as a specialized graphs. These graphs are an adaptation of Colored Petri Nets with guards, it representing signature context and vertices representing system states.

A new methodology to develop countermeasures against code injection attacks, and validates the methodology by working out a speci?c countermeasure. This methodology is based on modeling the execution environment of a program. Such a model is then used to build countermeasures.

Nowadays design and implementation methods exists for reducing the security vulnerabilities of software. A variety of source code security checkers are available, that use automatic scanning to indicate potential security pitfalls in a software application. Nevertheless, the imperative nature of the majority of programming languages used now may lie at the source of the security vulnerabilities.

A new technique for ?nding potential buffer overrun vulnerabilities in security-critical C code. The key to success is to use static analysis, Then formulate detection of buffer overruns as an integer range analysis problem. One major advantage of static analysis is that security bugs can be eliminated before code is deployed.

CHAPTER 3
DISCUSSIONS
3.1 FRAMEWORKS IN ARCHITECTURE DESIGN
A framework is a reusable software theme that provides generic functionality like addressing recurring concerns across a wide range of applications. Frameworks will helps to increase productivity by letting programmers focus on business logic and end user value rather than its underlying technologies. Frameworks is an abstract of some combination of application, language, hardware, networking, storage, or operating system characteristics. One aim of it is to reduce the cognitive burden on the programmer, who needs to learn only the framework rather than all the underlying technological details 13. The abstractions should change more slowly than the details, easing portability and evolution. Moreover, these abstractions being shared among many systems, will more likely be heavily tested, reducing or entirely eliminating classes of bugs.

Frameworks might generate new requirements consider an example, if plan on using Ajax (Asynchronous JavaScript and XML), the customers will need a Web browser that supports JavaScript. In this way, frameworks can limit the architecture design options. However, they might also create new opportunities and introducing the possibility of new features.

3.2 HOTSPOT PATTERNS
The industrial study to determine the usefulness of hotspot patterns in practice for qualitative evaluation. Wanted to evaluate if these patterns reveal the major architecture problems that are valuable to the architect and developers, and if, in addition to identifying where to refactor, these patterns can provide suggestions about how to refactor. In this case study, identi?ed the two instances of Unstable Interface patterns and one instance of Implicit Cross-module Dependency, also it in?uencing more than hundred ?les 8. The architect and developers in this study con?rmed that this hotspot detector discovered a majority of the architecture problems that are causing maintenance pain. Furthermore based on the nature of the patterns identified or discovered, they were able to identify the hidden dependencies behind its Implicit Cross-module Dependency issue, and the two interfaces that have grown into “God” interfaces, thus needing to be refactored. They have started to improve the maintainability of their system by refactoring and ?xing these architecture issues.

3.3 ARCHITECTURE-CENTRIC APPROACH
The impact of the architectural relations among different ?les on software security, as well as the impact of security patches to architecture, were never can fully 9. The architectural ?aws may be one of the signi?cant causes of the dif?culty of ?xing security issues, and the ad hoc patches may deteriorate software architecture, which will attempt to incur more, and wide-spreading the security issues.

Now, there has been increasing interest in the consequences of architectural design for security. The research goal is to reveal the signi?cant relationship between architectural design and security tactics also in particular, to show how architectural issues are strongly correlated with high rates of security bugs. The fact is that the vast majority of open source projects do not tag security at all in their issue tracking system. And developers suspect that many projects that are using CVEs, that are actually under reporting their security bugs. Part of the reason for this discrepancy is that CVEs are a subset of all security issues. CVEs are security issues that are publicly known and acknowledged vulnerabilities in architecture.

3.4 DETECTING ARCHITECTURAL TACTICS IN CODE
Software architectures are often constructed through a series of design decisions. In particular, architectural tactics are normally selected to satisfy some speci?c quality concerns such as reliability, performance, and security 10. However, the knowledge of these tactical decisions is often losts, it results in a gradual degradation of architectural quality as developers modify the code without fully understanding the architectural decisions. Here present a machine learning approach for identifying, discovering and visualizing architectural tactics in code, then mapping these code as segments to Tactic Traceability Patterns, and monitoring sensitive areas of the code for modi?cation events in order to provide users with up-to-date information about underlying architectural concerns.
Initially the tactic detection problem may appear to be as a special case of design pattern recognition, it turns out to be more challenging. Unlike the design patterns which tend to be described in terms of classes and their associations,tactics are described in terms of roles and interactions. This means that a single tactic might be implemented using a variety of different design patterns. For example observed the heartbeat tactic implemented using (i) direct communication between the sender and receiver roles, (ii) the observer pattern in which the receiver registered as a listener to the sender found in the system
2.5 Archie: A Tool for Detecting Architecturally Signi?cant Code
The quality of a software architecture is largely dependent upon the architectural decisions at the framework, tactic, and pattern levels 11. Decisions to adopt certain solutions determine the extent to which desired qualities such as security, availability, and performance, that are achieved in the delivered system. Archie detects architectural tactics such as heartbeat, resource pooling, and role-based access control (RBAC) in the source code of a project; constructs traceability links between the tactics, design models, rationales and source code; and then uses these to monitor the environment for architecturally signi?cant changes and to keep developers informed of underlying design decisions and their associated rationales.

An alternate solution is to use trace links to connect design rationales with impacted parts of the code. Unfortunately, while it is conceptually simple to create a trace matrix documenting the relationships between design decisions, their rationales, and the impacted code elements, in practice any efforts to establish traceability at the code level are very challenging. There are several contributing factors including lack of adequate tooling and the fact that traceability links are often created, maintained, and used in isolation from regular development activities, and are not accessible to support daily software engineering tasks.

2.6 RESEARCH ON SOFTWARE SECURITY VULNERABILITIES
One of the major problems in software security is the lack of knowledge about security among software developers 12. Even if a developer has good knowledge about current software vulnerabilities, they generally have little or no idea about the causes and measures that can avoid those vulnerabilities. Now it is established fact that most of the vulnerabilities arise in design phase of the software development lifecycle. Keeping in view the importance of software design level security, a study of current software design level vulnerabilities and their cause is conducted. In this context, discuss current practices in specific software design tasks, vulnerabilities and mitigation mechanism. On the basis of the critical review, areas of research are identified that warrant further investigation.
There has been plenty of work around on software security and development of tools. Most of these, evaluate security in all phases of software development process. CLASP, Secure Tropos, Framework for secure system development are good examples that address security throughout the software development cycle. CLASP is a plug-in that can be integrated into other processes like RUP (Rational Unified Process). As already reported importance of security integration in the design phase in previous section, do not find much work reported in the area as compared to its importance. However, a rapid growth has been visualized recently.

2.7 A TAXONOMY OF SOFTWARE SECURITY ERRORS
This approach represents a striking alternative to taxonomies of attack patterns1 or simple-minded collections of speci?c vulnerabilities (such as MITRE’s CVE, www.cve. mitre.org) 14. Attack-based approaches are based on knowing your enemy and assessing the possibility of similar attack they represent the black hat side of the software security equation. However, a taxonomy of software security errors is more positive in nature it’s most useful to the white hat side of the software security world. In the end, both approaches are valid and necessary. Although the taxonomy proposed here is incomplete and imperfect, it provides an important ?rst step. It focuses on collecting common errors and explaining them in a way that makes sense to programmers.
This new taxonomy is made up of two distinct kinds of sets, which are stealing from biology: a phylum (a type of coding error, such as illegal pointer value) and a kingdom (a collection of phyla that shares a common theme, such as input validation and representation). Both kingdoms and phyla naturally emerge from a soup of coding rules relevant to enterprise software, and it’s for this reason that this taxonomy is likely to be incomplete and might lack certain coding errors. In some cases, it’s easier and more effective to talk about a category of errors than to talk about any particular attack. Although categories are certainly related to attacks, they aren’t the same as attack patterns.

2.8 A VULNERABILITY-ACTIVITY REVISIT
There are three major approaches to develop secure software. The first approach is known as penetrate and patch. Penetrate and patch means applying patches to fix vulnerable applications 15. It is a common approach to securing applications but, the cost of finding and fixing a bug after a software product has been released can be 100 times more expensive than solving the problem in the development phases 16. Furthermore, patches can contain yet vulnerabilities.

The goal of vulnerability analysis is to develop methodologies that provide the ability to specify, design and implement software without vulnerabilities and also ability to detect vulnerabilities during system operation. Vulnerability classification frameworks describe security flaws from various perspectives. Some frameworks describe vulnerabilities by classifying the techniques used to exploit them, others characterize vulnerabilities in terms of the software and hardware components and interfaces that make up the vulnerability, and also others classify vulnerabilities by their nature. In this section briefly describe the most important works on vulnerability classification.
The most important activities in the implementation phase, on the order of importance, includes security code review, input validation, use of secure library functions rather than relying on system calls. Manual code review is a tedious job. There are some automated tools that scan the code for vulnerabilities and security problems. However, they do not guarantee the removal of all those vulnerabilities which can be removed by code review. Nevertheless, they are a good aid for security professionals and programmers to solve preliminary security flaws in the programs. For input validation, the input is assumed to be malicious by default and its format and type must be carefully validated. It is done using limiting rules that are specified by programmers depending on the input type. Insecure functions as well as system functions should be replaced by safe library functions made for the corresponding programming language.

2.9 REMOVAL OF SOFTWARE SECURITY VULNERABILITIES
Simply including some standard data validation techniques in the source code can prevent many software security vulnerabilities. These techniques are based on the principle that all data should be filtered and then either accepted or rejected. Then recommends several data validation rules such as assuming all input is guilty until proven otherwise, preferring to reject data rather than filter it, performing data validation both at input points and at the component level, not accepting commands from the user unless they are parsed by the software, and making policy decisions based on a “default deny” rule.
Buffer overflow attacks occur when a string of characters of unchecked length is entered into a program 16. This allows user supplied input to overwrite other variables, thereby changing their values. Such attacks can change the value of a return address from a function call and cause control to jump to malicious code that was also entered via the buffer overflow. Some solutions are declaring all local variables in C as static to keep them off of the stack. Patches can be added to an operating system to make code in the stack non-executable.

The idea of proving a software program correct has been researched for decades. These principles and techniques can be used to build purely functional programs that are correct. Such principles and techniques can then be applied to secure software. This refinement approach may reveal that incomplete and faulty security requirements result in incomplete and faulty security designs and programs. Refining a requirement specification down to its functional implementation may reveal mathematically that the original specification is incorrect. This approach could identify a security vulnerability in a requirement long before the program is implemented and released to the public for possible virus attacks
2.10 APPROACH TO APPLY SECURITY TACTICS
Architectural tactics represent codi?ed knowledge obtained from the experience gained by architects. Architectural tactics are high-level decisions made by architects to meet or improve a quality attribute 17. Tactics are general guidelines on how to design a speci?c aspect of a software system without imposing a particular structure of software. However, much of the literature describes the tactics as a catalog organized hierarchically but do not describe the activities to be incorporated into the architecture.

On the other hand, security is a quality attribute with particular characteristics that makes a complex property due to its strong dependence on the application domain and requires a sophisticated analysis. Security is an attribute that is not planned at the beginning of the software life cycle. In terms of architecture design, security is a quality property that cannot be resolved in a separate view because it is traversal to the concerns considered into architectural views. Security has dimensions such as: process security, information security, operational security and security deployment. Security tactics can be applied simultaneously in multiple models and use several forms of implementation such as: introduce a new hardware or software security technology, add operational procedures to support secure operation or modify existing structures, among others.

The proposed architecture is organized into two major subsystems: The ?rst is the Premodeled Scenarios Subsystem, responsible for the preparation of a database with a large number of simulated scenarios using bathymetry to achieve broad coverage location with forecast points, geographical blocks impacted on the coastal line and wave height. The second is the Alert Decision-Making Subsystem to support the tsunami alert generation and monitoring.
CHAPTER 4
MODELLING
In web applications, the programmers needs to create registration form to enter the inputs. Mostly the programmer does not have any knowledge about security in web application. For a fresher, he will take time to create a registration form. At that time, he will make bugs. So, the industry itself needs to set a system to provide security in the web application. This system may be considered as a framework. For this framework using some tools or components.

The framework created for input validation, actor authentication and also for monitoring and suggestion purpose.

VALIDATION
FRAMEWORK

SERVER
Request
Response
ACTOR AUTHENTICATION

Suggestion
MONITORING SYSTEM

Fig 1. Concept based design
The programmer creating a framework to retrieve the data from the system. The framework is used to call validation and actor authentication. The problem existing here is, the system cannot know who the user is or whether the user is a authenticated person or not. To solve this issue, we created a new framework called MVC new framework. This concept is showed in figure 1.By using this new framework the system can monitor the security issues to the application developed while or after the execution. If an actor authentication is not implemented strictly, the attacker can steal the user information. The attacker can act as a user by providing similar requests to the application.

MVC NEW FRAMEWORK
As touched on above, model, view and controller is called as a new framework named as MVC new framework. They can solve the problem with input validation and access control. It can identify the vulnerability type. Some MVC frameworks do not contain all of these features, most contain one or two.

A simple way to understand the concepts of framework is, a user can interacts with the view state by clicking on a link or submitting a form. The controller will handles the user input when it entered, and transfers the user information to the model state. The model receives the information and can updates it’s state like adds data to a database. The view will checks the state of the model and its updates. It responds accordingly or one by one. The view waits for another interaction from the user or it waits for some inputs from user.

Some details of MVC new frameworks
User Request
The software architects often adopt some security mechanisms for resisting attacks. Incorrect implementation or deterioration during software evolution leads to some security bugs. If a system that contains a lots of information, that may be used by an administrator or a user. Sometimes the user can act as an administrator like requesting to the application. They can steal their information.
Frameworks for basic issues
There are many frameworks in many platform to provide security to the system. Most commonly used framework is model, view, controller framework. But in php, there is no framework for input validation and access control specification as logical issues. So, we are introducing an MVC new framework to solve the problem with logical issues.

The user can request to the system and he can act as an administrator by sending administrator id. At that time the system cannot know who is the authenticated user. He will give the administrator information to the attacker.
A new framework for any web application security. If an attacker injects some spywares to the administrator, the spywares will take the IP address of administrator and give it to the user. By this way, the user can change the IP address of itself as same as administrator. So, the system cannot differentiate them as user and as administrator. MVC new framework can solve this issue.

Components for framework
There are four components used for framework
Form Assist Component
Input Validator Component
Input Data Analyzer
Auto authentication
Form Creation
Form assist component contains modules to create and fill form elements like text boxes, select boxes, check box groups and radio groups etc. It also contains auto refilling for posted backforms. The form assist component is used to create, populate and to repopulate the registration forms.

The web form creation, population and repopulation can be g into framework models in MVC framework architecture. In MVC architecture, there are three basic components. First one is a model, the models are components that manages operations. Second one is view, it will manages user interface. Third one is a controller,that organizes responses.

Form Validator
Form validator is a component, which is responsible for validating user inputs in a web form by referring given set of rules. It will automatically takes input data and validates the data with respect to the rules and generate errors corresponding to each input. The validator needs to set the rules manually. The drawbacks of form validator component is, it needs to set the rules manually and the programmer does not have any idea about which rules where to be applied.

Input Data Analyzer
It is a component that analyzes data given in forms and generates rules for each input with respect to the data given for them. The analysis will involve behavior analysis, type analysis, mandatory field analysis, data length analysis, range analysis and data field comparison analysis. After this, the rules automatically generated for each field. Then, the rules generated by input data analyzer will be forwarded to the validator. So, the validator can use the rules to validate the form.

Auto authentication
The authenticator component analyze users and provide access control to the web pages with respect to the given access control specification. It auto authenticate users with pages and provides page if allowed. Otherwise, if it detects an unauthorized access from a user, it will end the current session of the user to prevent further intrusion from that user.

ACCESS CONTROL
Enterprise resource planning pattern in which, it will create pages and give access control to the pages. But in waterfall model, its drawback is, the access control cannot be set to pages. Each user requires individual page, it to be named as static model. ERP is a development system that allows to create and customize projects with respect to enterprise organizational structure. Here, introducing an ERP based access control method for projects developed waterfall model.

The steps to provide access control within a single page is, user type identification, process filtration, check authentication and session termination or block. The technologies used to provide access control is session and cookie. The session is temporary storage in server to keep data of clients. Cookie is a small piece of data sent from a site and that stored on the users system by the users browser.

CONCLUSION
Software architects often adopt some security mechanisms to recovering from attacks. But still we are facing some problem with input validation and access control specification. If an actor authentication is not implemented strictly, others can steal their information. There are many frameworks to find the attacker by tracking the IP address of users. Although there exists some attackers by changing the IP address of attacker as same as administrator. So, here introducing an MVC new framework to monitor and suggesting the system. This framework could solve the problem with input validation and access control specification.

REFERENCES
M. E. Fagan, (2002) “Design and code inspections to reduce errors in program development,” IBM Systems Journal, vol. 15, no. 3, pp. 182 –211.

G. McGraw, “Software security,” (2004) IEEE Security Privacy, vol. 2, no. 2,pp. 80 – 83.

A. Bosu “Automated code review tools for security,” (2008) Computer, vol. 41,no. 12, pp. 108 –111.

J. C. Carver, “Peer code review in open source communities using Review board,”
(2008) in Proc. of the 4th ACM Wksp. on Evaluationand Usability of Prog. Lang. and Tools.

K. Tsipenyuk, B. Chess, and G. McGraw,(2009) “Seven pernicious kingdoms:a taxonomy of software security errors,” IEEE Security Privacy, vol. 3.

M. Dowd, J. McDonald, and J. Schuh, (2009) “The Art of Software Security Assessment:
Identifying and Preventing Software Vulnerabilities”. Addison- Wesley Professional..P. C. Rigby, D. M. German, and M.-A. Storey, (2010) Open source softwarein Proc. of thepeer review practices: a case study of the apache server.

M.A. Hadavi, H. M. Sangchi, V. S. Hamishagi, H. Shirazi, (2010), Software Security; A Vulnerability-Activity Revisit. The Third International Conference on Availability, Reliability and Security.

Qiong Feng, Rick Kazman, Yuanfang Cai, Ran Mo, Lu Xiao (2010), Towards an Architecture-centric Approach to Security Analysis 13th Working IEEE/IFIP Conference on Software Architecture.

Jay-Evan J. Tevis (2011) Methods For The Prevention, Detection And Removal Of Software Security Vulnerabilities, ACM Southeast Conference’04, April 2–3, 2004, Huntsville, AL, USA.

Mehdi Mirakhorli ,(2014) , Archie: A Tool for Detecting, Monitoring, and Preserving Architecturally Significant Code,
S. Rehman1 & K. Mustafa2, (2014), Research on Software Design Level Security Vulnerabilities, ACM SIGSOFT Software Engineering Notes Page 1.

Humberto Cervantes, (2014), A Principled Way to Use Frameworks in Architecture Design, IEEE Software published by the IEEE computer society.

Gary McGraw, (2014), Seven Pernicious Kingdoms: A Taxonomy of Software Security Errors, PUBLISHED BY THE IEEE COMPUTER SOCIETY.

M.A. Hadavi, H. M. Sangchi, V. S. Hamishagi, H. Shirazi, (2015), Software Security; A Vulnerability-Activity Revisit, The Third International Conference on Availability, Reliability and Security.

John A. Hamilton,(2015), Methods For The Prevention, Detection And Removal Of Software Security Vulnerabilities. ACM Southeast Conference’04, April 2–3, 2004, Huntsville, AL, USA.

Xudong He *, Huiqun Yu, Tianjun Shi, Junhua Ding, Yi Deng, (2015), Formally analyzing software architectural specifications using SAM, The Journal of Systems and Software 71.