KR102613616B1 - System for providing portal solution service - Google Patents

System for providing portal solution service Download PDF

Info

Publication number
KR102613616B1
KR102613616B1 KR1020230009809A KR20230009809A KR102613616B1 KR 102613616 B1 KR102613616 B1 KR 102613616B1 KR 1020230009809 A KR1020230009809 A KR 1020230009809A KR 20230009809 A KR20230009809 A KR 20230009809A KR 102613616 B1 KR102613616 B1 KR 102613616B1
Authority
KR
South Korea
Prior art keywords
user
page
user terminal
portal
unit
Prior art date
Application number
KR1020230009809A
Other languages
Korean (ko)
Inventor
조남석
Original Assignee
(주)신나는플랫폼
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by (주)신나는플랫폼 filed Critical (주)신나는플랫폼
Priority to KR1020230009809A priority Critical patent/KR102613616B1/en
Application granted granted Critical
Publication of KR102613616B1 publication Critical patent/KR102613616B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/04817Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance using icons
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/103Formatting, i.e. changing of presentation of documents
    • G06F40/109Font handling; Temporal or kinetic typography
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • G06Q10/109Time management, e.g. calendars, reminders, meetings or time accounting
    • G06Q10/1093Calendar-based scheduling for persons or groups

Abstract

포털 솔루션 서비스 제공 시스템이 제공되며, 기관 내 사용자의 신분에 대응하는 기본 페이지를 출력하고, 반응형웹(Responsive Web)을 기반으로 화면의 크기에 따라 최적화되도록 디스플레이하며, 화면을 구성하는 적어도 하나의 단위 포틀릿(Portlet)의 위치 및 종류를 조정하여 개인화하는 사용자 단말 및 기관 내 적어도 하나의 페이지가 SSO(Single Sign On)으로 연동되도록 설정하는 통합로그인부, 사용자 단말의 사용자의 신분에 따른 기본 페이지를 제공하는 페이지제공부, 사용자 단말의 화면의 크기에 따라 포털 페이지가 최적화되도록 반응형웹을 제공하는 반응형웹제공부, 사용자 단말에서 기본 페이지를 구성하는 적어도 하나의 단위 포틀릿의 위치 및 종류를 조정하는 경우 세팅을 저장하는 개인화부를 포함하는 솔루션 서비스 제공 서버를 포함한다.A portal solution service provision system is provided, which outputs a basic page corresponding to the user's identity within the institution, displays it to be optimized according to the size of the screen based on Responsive Web, and is at least one unit that constitutes the screen. Provides a user terminal that is personalized by adjusting the location and type of portlet, an integrated login section that sets up at least one page within the organization to be linked with SSO (Single Sign On), and a default page according to the user's identity of the user terminal. A page providing unit that provides a responsive web so that the portal page is optimized according to the screen size of the user's terminal, a setting that adjusts the position and type of at least one unit portlet that makes up the basic page on the user's terminal. It includes a solution service providing server that includes a personalization unit that stores.

Description

포털 솔루션 서비스 제공 시스템{SYSTEM FOR PROVIDING PORTAL SOLUTION SERVICE}Portal solution service provision system {SYSTEM FOR PROVIDING PORTAL SOLUTION SERVICE}

본 발명은 포털 솔루션 서비스 제공 시스템에 관한 것으로, 전자정부 표준프레임워크, 반응형웹 및 글로벌표준을 기반으로 통합로그인, 포틀릿 개인화 및 일정관리를 포함한 솔루션을 제공하는 시스템을 제공한다.The present invention relates to a portal solution service provision system, and provides a system that provides solutions including integrated login, portlet personalization, and schedule management based on the e-government standard framework, responsive web, and global standards.

ICBM(IoT, Cloud, BigData, Mobile) 및 인공지능으로 대변되는 급격한 정보통신기술의 발달은 공공정책의 형성, 분석, 결정 및 집행의 패러다임에 큰 변화를 초래하였다. 제4차 산업혁명으로 일컬어지는 미래 변화는 후기 산업사회의 모습을 지능정보사회로 전환시켰고, 행정의 효율성 강화와 동시에 국민에 대한 책무성을 강화하며 더불어 국민 참여 바탕의 공공정책 강화가 요구되는 시대를 맞이하게 되었다. 전자정부를 둘러싼 환경은 과거와 더불어 현재에도 끊임없이 변화하고 있다. 특히, 인터넷 혁명 이후, 기술의 급속한 발전과 세계화의 확산은 기술 및 사회 간 지속적인 상호작용을 통해 새로운 형태로의 진화를 가져왔고, 새로운 유망 정보통신기술로써 지능정보기술이 세계적으로 주목을 받고 있다. 전자정부 표준프레임워크는 표준화 요구 사항에 의해 표준화된 원칙에 의거하여 대한민국의 공공부문 정보화 사업시 표준화된 개발프레임워크로, 공공기관의 전자정부 표준프레임워크의 도입이 해마다 증가하고 있으며, 교육, 행정 및 의료 분야 뿐만 아니라, 금융, 유통, 항공, 건설 등 다양한 민간 정보화 사업에 급속히 확산되고 있다.The rapid development of information and communication technology, represented by ICBM (IoT, Cloud, Big Data, Mobile) and artificial intelligence, has brought about significant changes in the paradigm of public policy formation, analysis, decision, and execution. The future change referred to as the Fourth Industrial Revolution has transformed the post-industrial society into an intelligent information society, creating an era that requires strengthening administrative efficiency and accountability to the public, as well as strengthening public policies based on public participation. I met you. The environment surrounding e-government is constantly changing, both in the past and in the present. In particular, since the Internet revolution, the rapid development of technology and the spread of globalization have led to evolution into a new form through continuous interaction between technology and society, and intelligent information technology is attracting global attention as a new promising information and communication technology. The e-government standard framework is a standardized development framework for public sector informatization projects in Korea based on the principles standardized by standardization requirements. The introduction of the e-government standard framework by public institutions is increasing every year, and the education and administration and medical fields, as well as various private information businesses such as finance, distribution, aviation, and construction.

이때, 대학 및 의료기관에서 통합 포털 솔루션이 연구 및 개발되었는데, 이와 관련하여, 선행기술인 한국등록특허 제10-2330948호(2021년11월30일 공고) 및 한국공개특허 제2016-0122533호(2016년10월24일 공개)에는, 실시간으로 업데이트되는 학사일정 및 학사정보를 공유하고, 학사일정 및 학사정보를 기반으로 응용 프로그램을 통해 커뮤니티 서비스 및 학사 콘텐츠 서비스를 제공하며, 학사관리서버와 콘텐츠지원서버를 연계시켜 학사일정 및 학사정보를 커뮤니티 서비스로 제공하는 구성과, 의료서비스 통합관리장치에서 사용자 및 의료관계자를 구분되도록 설정하고, 사용자 및 의료관계자를 위한 서비스를 제공할 때, 서비스의 종류에 따라 의료서비스 통합 네트워크를 이용하는 다른 협력기관과 실시간으로 연동하여 서비스를 제공하는 구성이 각각 개시되어 있다.At this time, integrated portal solutions were researched and developed in universities and medical institutions. In relation to this, the prior art, Korean Patent No. 10-2330948 (announced on November 30, 2021) and Korean Patent Publication No. 2016-0122533 (2016) (released on October 24) shares the academic schedule and academic information updated in real time, provides community services and academic content services through an application based on the academic calendar and academic information, and provides academic management servers and content support servers. By linking, the academic calendar and academic information are provided as a community service, and the integrated medical service management device is set to distinguish between users and medical personnel, and when providing services for users and medical personnel, depending on the type of service. Configurations that provide services in real-time linkage with other cooperative organizations using an integrated medical service network are disclosed.

다만, 전자 및 후자의 구성 모두 전자정부 표준프레임워크에 기반한 포털 솔루션이 아니고, 반응형웹이나 글로벌표준에 기반한 플랫폼이 아니다. 전자정부 표준프레임워크는 유사기능 중복개발방지 및 글로벌기업에 의한 기술종속성 해소를 위해 오픈소스 라이선스 정책을 제공하고 있으며, 표준프레임워크 센터를 중심으로 프레임워크에 대한 체계적인 표준 관리 및 기술지원 서비스가 무상으로 제공되고 있다. 특히 IT업체가 개발한 솔루션이 전자정부 표준프레임워크와 연동하여 정상 동작하는 지를 확인해 주는 호환성 검증 서비스를 제공하고 있다. 전자정부 표준프레임워크를 근간으로 새로운 기능을 추가한 확장 솔루션 전자정부 표준프레임워크와 연동하는 외부의 독립적인 솔루션인 연동 솔루션등 다양한 제품들이 출시되면서 새로운 시장이 만들어 지고 있다. 전자정부 표준프레임워크는 공공사업에 적용되는 개발프레임워크의 표준정립으로 응용 소프트웨어 표준화, 품질 및 재사용성 향상을 목표로 하며, 정보시스템 개발을 위해 필요한 기능 및 아키텍처를 미리 만들어 제공함으로써 효율적인 애플리케이션 구축을 지원한다. 이에, 전자정부 표준프레임워크를 기반으로 반응형웹 및 글로벌표준을 제공하는 기관 포털 솔루션의 연구 및 개발이 요구된다.However, both the former and the latter configuration are not portal solutions based on the e-government standard framework, nor are they platforms based on responsive web or global standards. The e-government standard framework provides an open source licensing policy to prevent duplicate development of similar functions and resolve technological dependency by global companies, and free systematic standard management and technical support services for the framework are provided centering on the Standard Framework Center. is provided. In particular, we provide a compatibility verification service that confirms whether solutions developed by IT companies operate properly in conjunction with the e-government standard framework. A new market is being created as various products are released, such as expansion solutions that add new functions based on the e-government standard framework and interlocking solutions that are external, independent solutions that link with the e-government standard framework. The e-government standard framework aims to standardize application software and improve quality and reusability by establishing standards for development frameworks applied to public projects, and to build efficient applications by providing the functions and architecture necessary for information system development in advance. Support. Accordingly, research and development of institutional portal solutions that provide responsive web and global standards based on the e-government standard framework are required.

본 발명의 일 실시예는, 각종 행정, 의료 및 교육기관의 기관 통합 솔루션을 제공할 때, 전자정부 표준프레임워크, 반응형웹 및 글로벌표준을 기반으로 제공하며, SSO(Single Sign On)을 통하여 통합 로그인을 제공하고, 사용자의 신분에 따라 포틀릿(Portlet)을 디폴트로 제공하되 사용자가 원하는대로 간편한 드래그 앤 드롭(Drag & Drop)을 통해 기본 페이지 및 포털 페이지를 변경할 수 있도록 개인화 서비스를 지원하며, 관리자 또한 상기 동적 메뉴관리, 포틀릿 관리, 권한 관리 및 사용자 관리를 수행할 수 있도록 하고, 시간외근무 관리, 공지사항 관리, 일정 관리 등 다양한 행정, 의료 및 학사 솔루션을 제공할 수 있는, 포털 솔루션 서비스 제공 시스템을 제공할 수 있다. 다만, 본 실시예가 이루고자 하는 기술적 과제는 상기된 바와 같은 기술적 과제로 한정되지 않으며, 또 다른 기술적 과제들이 존재할 수 있다.One embodiment of the present invention provides institutional integration solutions for various administrative, medical, and educational institutions based on the e-government standard framework, responsive web, and global standards, and is integrated through SSO (Single Sign On). Login is provided and a portlet is provided as default according to the user's identity, but a personalization service is supported so that the user can change the default page and portal page through easy drag and drop as desired, and the administrator In addition, it is a portal solution service provision system that enables the dynamic menu management, portlet management, authority management, and user management, and provides various administrative, medical, and academic solutions such as overtime management, notice management, and schedule management. can be provided. However, the technical challenge that this embodiment aims to achieve is not limited to the technical challenges described above, and other technical challenges may exist.

상술한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본 발명의 일 실시예는, 기관 내 사용자의 신분에 대응하는 기본 페이지를 출력하고, 반응형웹(Responsive Web)을 기반으로 화면의 크기에 따라 최적화되도록 디스플레이하며, 화면을 구성하는 적어도 하나의 단위 포틀릿(Portlet)의 위치 및 종류를 조정하여 개인화하는 사용자 단말 및 기관 내 적어도 하나의 페이지가 SSO(Single Sign On)으로 연동되도록 설정하는 통합로그인부, 사용자 단말의 사용자의 신분에 따른 기본 페이지를 제공하는 페이지제공부, 사용자 단말의 화면의 크기에 따라 포털 페이지가 최적화되도록 반응형웹을 제공하는 반응형웹제공부, 사용자 단말에서 기본 페이지를 구성하는 적어도 하나의 단위 포틀릿의 위치 및 종류를 조정하는 경우 세팅을 저장하는 개인화부를 포함하는 솔루션 서비스 제공 서버를 포함한다.As a technical means for achieving the above-mentioned technical problem, one embodiment of the present invention outputs a basic page corresponding to the identity of the user within the institution and optimizes it according to the size of the screen based on the Responsive Web. A user terminal that displays and personalizes the position and type of at least one unit portlet constituting the screen, and an integrated login unit that sets at least one page within the organization to be linked with SSO (Single Sign On), the user A page providing unit that provides a basic page according to the identity of the user of the terminal, a responsive web providing unit that provides a responsive web so that the portal page is optimized according to the screen size of the user terminal, and at least one that configures a basic page in the user terminal. It includes a solution service providing server that includes a personalization section that stores settings when adjusting the location and type of the unit portlet.

전술한 본 발명의 과제 해결 수단 중 어느 하나에 의하면, 각종 행정, 의료 및 교육기관의 기관 통합 솔루션을 제공할 때, 전자정부 표준프레임워크, 반응형웹 및 글로벌표준을 기반으로 제공하며, SSO(Single Sign On)을 통하여 통합 로그인을 제공하고, 사용자의 신분에 따라 포틀릿(Portlet)을 디폴트로 제공하되 사용자가 원하는대로 간편한 드래그 앤 드롭(Drag & Drop)을 통해 기본 페이지 및 포털 페이지를 변경할 수 있도록 개인화 서비스를 지원하며, 관리자 또한 상기 동적 메뉴관리, 포틀릿 관리, 권한 관리 및 사용자 관리를 수행할 수 있도록 하고, 시간외근무 관리, 공지사항 관리, 일정 관리 등 다양한 행정, 의료 및 학사 솔루션을 제공할 수 있다.According to one of the means for solving the problems of the present invention described above, when providing institutional integration solutions for various administrative, medical, and educational institutions, it is provided based on the e-government standard framework, responsive web, and global standards, and SSO (Single SSO) is provided based on the e-government standard framework, responsive web, and global standards. Integrated login is provided through Sign On, and a portlet is provided as default depending on the user's identity, but is personalized so that the user can change the default page and portal page through simple drag and drop as desired. It supports services and allows administrators to perform the dynamic menu management, portlet management, authority management, and user management, and provides various administrative, medical, and academic solutions such as overtime management, notice management, and schedule management. .

도 1은 본 발명의 일 실시예에 따른 포털 솔루션 서비스 제공 시스템을 설명하기 위한 도면이다.
도 2는 도 1의 시스템에 포함된 솔루션 서비스 제공 서버를 설명하기 위한 블록 구성도이다.
도 3 및 도 4는 본 발명의 일 실시예에 따른 포털 솔루션 서비스가 구현된 일 실시예를 설명하기 위한 도면이다.
도 5는 본 발명의 일 실시예에 따른 포털 솔루션 서비스 제공 방법을 설명하기 위한 동작 흐름도이다.
1 is a diagram for explaining a portal solution service provision system according to an embodiment of the present invention.
FIG. 2 is a block diagram illustrating a solution service providing server included in the system of FIG. 1.
Figures 3 and 4 are diagrams for explaining an embodiment in which a portal solution service according to an embodiment of the present invention is implemented.
Figure 5 is an operation flowchart illustrating a method of providing a portal solution service according to an embodiment of the present invention.

아래에서는 첨부한 도면을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본 발명의 실시예를 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.Below, with reference to the attached drawings, embodiments of the present invention will be described in detail so that those skilled in the art can easily implement the present invention. However, the present invention may be implemented in many different forms and is not limited to the embodiments described herein. In order to clearly explain the present invention in the drawings, parts that are not related to the description are omitted, and similar parts are given similar reference numerals throughout the specification.

명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. 또한 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미하며, 하나 또는 그 이상의 다른 특징이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.Throughout the specification, when a part is said to be "connected" to another part, this includes not only the case where it is "directly connected," but also the case where it is "electrically connected" with another element in between. . In addition, when a part is said to "include" a certain component, this does not mean excluding other components unless specifically stated to the contrary, but may further include other components, and one or more other features. It should be understood that it does not exclude in advance the presence or addition of numbers, steps, operations, components, parts, or combinations thereof.

명세서 전체에서 사용되는 정도의 용어 "약", "실질적으로" 등은 언급된 의미에 고유한 제조 및 물질 허용오차가 제시될 때 그 수치에서 또는 그 수치에 근접한 의미로 사용되고, 본 발명의 이해를 돕기 위해 정확하거나 절대적인 수치가 언급된 개시 내용을 비양심적인 침해자가 부당하게 이용하는 것을 방지하기 위해 사용된다. 본 발명의 명세서 전체에서 사용되는 정도의 용어 "~(하는) 단계" 또는 "~의 단계"는 "~ 를 위한 단계"를 의미하지 않는다. The terms "about", "substantially", etc. used throughout the specification are used to mean at or close to that value when manufacturing and material tolerances inherent in the stated meaning are presented, and are used to enhance the understanding of the present invention. Precise or absolute figures are used to assist in preventing unscrupulous infringers from taking unfair advantage of stated disclosures. The term “step of” or “step of” as used throughout the specification of the present invention does not mean “step for.”

본 명세서에 있어서 '부(部)'란, 하드웨어에 의해 실현되는 유닛(unit), 소프트웨어에 의해 실현되는 유닛, 양방을 이용하여 실현되는 유닛을 포함한다. 또한, 1 개의 유닛이 2 개 이상의 하드웨어를 이용하여 실현되어도 되고, 2 개 이상의 유닛이 1 개의 하드웨어에 의해 실현되어도 된다. 한편, '~부'는 소프트웨어 또는 하드웨어에 한정되는 의미는 아니며, '~부'는 어드레싱 할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다. 따라서, 일 예로서 '~부'는 소프트웨어 구성요소들, 객체 지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들 및 변수들을 포함한다. 구성요소들과 '~부'들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 '~부'들로 결합되거나 추가적인 구성요소들과 '~부'들로 더 분리될 수 있다. 뿐만 아니라, 구성요소들 및 '~부'들은 디바이스 또는 보안 멀티미디어카드 내의 하나 또는 그 이상의 CPU들을 재생시키도록 구현될 수도 있다.In this specification, 'part' includes a unit realized by hardware, a unit realized by software, and a unit realized using both. Additionally, one unit may be realized using two or more pieces of hardware, and two or more units may be realized using one piece of hardware. Meanwhile, '~ part' is not limited to software or hardware, and '~ part' may be configured to reside in an addressable storage medium or may be configured to reproduce one or more processors. Therefore, as an example, '~ part' refers to components such as software components, object-oriented software components, class components, and task components, processes, functions, properties, and procedures. , subroutines, segments of program code, drivers, firmware, microcode, circuits, data, databases, data structures, tables, arrays, and variables. The functions provided within the components and 'parts' may be combined into a smaller number of components and 'parts' or may be further separated into additional components and 'parts'. Additionally, components and 'parts' may be implemented to regenerate one or more CPUs within a device or a secure multimedia card.

본 명세서에 있어서 단말, 장치 또는 디바이스가 수행하는 것으로 기술된 동작이나 기능 중 일부는 해당 단말, 장치 또는 디바이스와 연결된 서버에서 대신 수행될 수도 있다. 이와 마찬가지로, 서버가 수행하는 것으로 기술된 동작이나 기능 중 일부도 해당 서버와 연결된 단말, 장치 또는 디바이스에서 수행될 수도 있다. In this specification, some of the operations or functions described as being performed by a terminal, apparatus, or device may instead be performed on a server connected to the terminal, apparatus, or device. Likewise, some of the operations or functions described as being performed by the server may also be performed in a terminal, apparatus, or device connected to the server.

본 명세서에서 있어서, 단말과 매핑(Mapping) 또는 매칭(Matching)으로 기술된 동작이나 기능 중 일부는, 단말의 식별 정보(Identifying Data)인 단말기의 고유번호나 개인의 식별정보를 매핑 또는 매칭한다는 의미로 해석될 수 있다.In this specification, some of the operations or functions described as mapping or matching with the terminal mean mapping or matching the terminal's unique number or personal identification information, which is identifying data of the terminal. It can be interpreted as

이하 첨부된 도면을 참고하여 본 발명을 상세히 설명하기로 한다.Hereinafter, the present invention will be described in detail with reference to the attached drawings.

도 1은 본 발명의 일 실시예에 따른 포털 솔루션 서비스 제공 시스템을 설명하기 위한 도면이다. 도 1을 참조하면, 포털 솔루션 서비스 제공 시스템(1)은, 적어도 하나의 사용자 단말(100), 솔루션 서비스 제공 서버(300), 적어도 하나의 관리자 단말(400)을 포함할 수 있다. 다만, 이러한 도 1의 포털 솔루션 서비스 제공 시스템(1)은, 본 발명의 일 실시예에 불과하므로, 도 1을 통하여 본 발명이 한정 해석되는 것은 아니다.1 is a diagram for explaining a portal solution service provision system according to an embodiment of the present invention. Referring to FIG. 1 , the portal solution service providing system 1 may include at least one user terminal 100, a solution service providing server 300, and at least one administrator terminal 400. However, since the portal solution service providing system 1 of FIG. 1 is only an embodiment of the present invention, the present invention is not limited to FIG. 1 .

이때, 도 1의 각 구성요소들은 일반적으로 네트워크(Network, 200)를 통해 연결된다. 예를 들어, 도 1에 도시된 바와 같이, 적어도 하나의 사용자 단말(100)은 네트워크(200)를 통하여 솔루션 서비스 제공 서버(300)와 연결될 수 있다. 그리고, 솔루션 서비스 제공 서버(300)는, 네트워크(200)를 통하여 적어도 하나의 사용자 단말(100), 적어도 하나의 관리자 단말(400)과 연결될 수 있다. 또한, 적어도 하나의 관리자 단말(400)은, 네트워크(200)를 통하여 솔루션 서비스 제공 서버(300)와 연결될 수 있다. At this time, each component of FIG. 1 is generally connected through a network (Network, 200). For example, as shown in FIG. 1, at least one user terminal 100 may be connected to the solution service providing server 300 through the network 200. In addition, the solution service providing server 300 may be connected to at least one user terminal 100 and at least one administrator terminal 400 through the network 200. Additionally, at least one manager terminal 400 may be connected to the solution service providing server 300 through the network 200.

여기서, 네트워크는, 복수의 단말 및 서버들과 같은 각각의 노드 상호 간에 정보 교환이 가능한 연결 구조를 의미하는 것으로, 이러한 네트워크의 일 예에는 근거리 통신망(LAN: Local Area Network), 광역 통신망(WAN: Wide Area Network), 인터넷(WWW: World Wide Web), 유무선 데이터 통신망, 전화망, 유무선 텔레비전 통신망 등을 포함한다. 무선 데이터 통신망의 일례에는 3G, 4G, 5G, 3GPP(3rd Generation Partnership Project), 5GPP(5th Generation Partnership Project), LTE(Long Term Evolution), WIMAX(World Interoperability for Microwave Access), 와이파이(Wi-Fi), 인터넷(Internet), LAN(Local Area Network), Wireless LAN(Wireless Local Area Network), WAN(Wide Area Network), PAN(Personal Area Network), RF(Radio Frequency), 블루투스(Bluetooth) 네트워크, NFC(Near-Field Communication) 네트워크, 위성 방송 네트워크, 아날로그 방송 네트워크, DMB(Digital Multimedia Broadcasting) 네트워크 등이 포함되나 이에 한정되지는 않는다.Here, the network refers to a connection structure that allows information exchange between each node, such as a plurality of terminals and servers. Examples of such networks include a local area network (LAN) and a wide area network (WAN). Wide Area Network, Internet (WWW: World Wide Web), wired and wireless data communication network, telephone network, wired and wireless television communication network, etc. Examples of wireless data communication networks include 3G, 4G, 5G, 3rd Generation Partnership Project (3GPP), 5th Generation Partnership Project (5GPP), Long Term Evolution (LTE), World Interoperability for Microwave Access (WIMAX), and Wi-Fi. , Internet, LAN (Local Area Network), Wireless LAN (Wireless Local Area Network), WAN (Wide Area Network), PAN (Personal Area Network), RF (Radio Frequency), Bluetooth network, NFC ( It includes, but is not limited to, Near-Field Communication (Near-Field Communication) network, satellite broadcasting network, analog broadcasting network, and DMB (Digital Multimedia Broadcasting) network.

하기에서, 적어도 하나의 라는 용어는 단수 및 복수를 포함하는 용어로 정의되고, 적어도 하나의 라는 용어가 존재하지 않더라도 각 구성요소가 단수 또는 복수로 존재할 수 있고, 단수 또는 복수를 의미할 수 있음은 자명하다 할 것이다. 또한, 각 구성요소가 단수 또는 복수로 구비되는 것은, 실시예에 따라 변경가능하다 할 것이다.In the following, the term at least one is defined as a term including singular and plural, and even if the term at least one does not exist, each component may exist in singular or plural, and may mean singular or plural. This should be self-explanatory. In addition, whether each component is provided in singular or plural form may be changed depending on the embodiment.

적어도 하나의 사용자 단말(100)은, 포털 솔루션 서비스 관련 웹 페이지, 앱 페이지, 프로그램 또는 애플리케이션을 이용하여 공공기관 또는 민간기업에 소속된 사용자의 단말일 수 있다. 이때, 사용자 단말(100)의 사용자는, 공공기관, 예를 들어 대학교의 교직원이라면, 교직원이라는 신분을 등록하여 기본 페이지를 출력하고, 교직원이 엑세스할 수 있는 권한을 부여받는 사용자의 단말일 수 있다. 또, 사용자 단말(100)은, SSO(Single Sign On)을 이용하여 공공기관 또는 민간기업에 연계된 사이트에 통합로그인을 하는 사용자의 단말일 수 있다. 예를 들어, 사용자가 대학교의 학생이라면, 사용자 단말(100)은, 대학교 사이트에서 도서관 사이트로 이동할 때 도서관 사이트에서 다시 로그인을 하지 않고 대학교 사이트의 로그인만으로도 도서관 사이트도 로그인 상태를 유지하면서 이용권을 획득하는 단말일 수 있다. 또, 사용자 단말(100)은 각종 부서일정, 학사일정, 개인일정 등을 일정관리로 알람을 출력하는 단말일 수 있고, 시간외근무 결재와 같은 결재요청을 업로드하고 승인여부를 전달받는 단말일 수 있다. 그리고, 사용자 단말(100)은 공공기관 또는 민간기업의 공지사항을 전달받아 출력하는 단말일 수 있다.At least one user terminal 100 may be a terminal of a user belonging to a public institution or private company using a web page, app page, program, or application related to the portal solution service. At this time, if the user of the user terminal 100 is a faculty member of a public institution, for example, a university, the terminal may be a user's terminal that registers the faculty member's identity, outputs a basic page, and is granted permission for the faculty member to access. . Additionally, the user terminal 100 may be a user terminal that performs integrated login to a site linked to a public institution or private company using SSO (Single Sign On). For example, if the user is a student at a university, when moving from the university site to the library site, the user terminal 100 obtains the right to use the library site by simply logging in to the university site without logging in again at the library site while maintaining the logged in state at the library site. It may be a terminal that does. In addition, the user terminal 100 may be a terminal that outputs alarms through schedule management of various department schedules, academic schedules, personal schedules, etc., and may be a terminal that uploads approval requests such as overtime work approval and receives approval. . Additionally, the user terminal 100 may be a terminal that receives and outputs notices from public institutions or private companies.

여기서, 적어도 하나의 사용자 단말(100)은, 네트워크를 통하여 원격지의 서버나 단말에 접속할 수 있는 컴퓨터로 구현될 수 있다. 여기서, 컴퓨터는 예를 들어, 네비게이션, 웹 브라우저(WEB Browser)가 탑재된 노트북, 데스크톱(Desktop), 랩톱(Laptop) 등을 포함할 수 있다. 이때, 적어도 하나의 사용자 단말(100)은, 네트워크를 통해 원격지의 서버나 단말에 접속할 수 있는 단말로 구현될 수 있다. 적어도 하나의 사용자 단말(100)은, 예를 들어, 휴대성과 이동성이 보장되는 무선 통신 장치로서, 네비게이션, PCS(Personal Communication System), GSM(Global System for Mobile communications), PDC(Personal Digital Cellular), PHS(Personal Handyphone System), PDA(Personal Digital Assistant), IMT(International Mobile Telecommunication)-2000, CDMA(Code Division Multiple Access)-2000, W-CDMA(W-Code Division Multiple Access), Wibro(Wireless Broadband Internet) 단말, 스마트폰(Smartphone), 스마트 패드(Smartpad), 타블렛 PC(Tablet PC) 등과 같은 모든 종류의 핸드헬드(Handheld) 기반의 무선 통신 장치를 포함할 수 있다.Here, at least one user terminal 100 may be implemented as a computer capable of accessing a remote server or terminal through a network. Here, the computer may include, for example, a laptop equipped with a navigation system and a web browser, a desktop, a laptop, etc. At this time, at least one user terminal 100 may be implemented as a terminal capable of accessing a remote server or terminal through a network. At least one user terminal 100 is, for example, a wireless communication device that guarantees portability and mobility, and includes navigation, personal communication system (PCS), global system for mobile communications (GSM), personal digital cellular (PDC), PHS (Personal Handyphone System), PDA (Personal Digital Assistant), IMT (International Mobile Telecommunication)-2000, CDMA (Code Division Multiple Access)-2000, W-CDMA (W-Code Division Multiple Access), Wibro (Wireless Broadband Internet) ) It may include all types of handheld-based wireless communication devices such as terminals, smartphones, smartpads, and tablet PCs.

솔루션 서비스 제공 서버(300)는, 포털 솔루션 서비스 웹 페이지, 앱 페이지, 프로그램 또는 애플리케이션을 제공하는 서버일 수 있다. 그리고, 솔루션 서비스 제공 서버(300)는, 기관 또는 기업 내 적어도 하나의 페이지가 SSO(Single Sign On)으로 연동되도록 통합로그인을 제공하고, 사용자의 신분에 따른 기본 페이지를 제공하며, 사용자 단말(100)의 화면의 크기에 따라 포털 페이지가 최적화되도록 반응형웹을 제공하고, 사용자 단말(100)에서 기본 페이지를 구성하는 적어도 하나의 단위 포틀릿의 위치 및 종류를 조정하는 경우 세팅을 저장해 개인화 서비스를 제공하는 서버일 수 있다. 솔루션 서비스 제공 서버(300)는, 관리자 단말(400)에서 동적 메뉴관리, 포틀릿 관리, 권한 관리 및 사용자 관리를 수행하도록 관리자 메뉴 및 관리자 페이지를 제공하는 서버일 수 있다.The solution service providing server 300 may be a server that provides a portal solution service web page, app page, program, or application. In addition, the solution service providing server 300 provides integrated login so that at least one page within the organization or company is linked with SSO (Single Sign On), provides a basic page according to the user's identity, and provides a user terminal (100). ) provides a responsive web so that the portal page is optimized according to the size of the screen, and provides a personalized service by saving the settings when adjusting the position and type of at least one unit portlet that makes up the basic page on the user terminal 100. It could be a server. The solution service providing server 300 may be a server that provides an administrator menu and an administrator page so that the administrator terminal 400 can perform dynamic menu management, portlet management, authority management, and user management.

여기서, 솔루션 서비스 제공 서버(300)는, 네트워크를 통하여 원격지의 서버나 단말에 접속할 수 있는 컴퓨터로 구현될 수 있다. 여기서, 컴퓨터는 예를 들어, 네비게이션, 웹 브라우저(WEB Browser)가 탑재된 노트북, 데스크톱(Desktop), 랩톱(Laptop) 등을 포함할 수 있다.Here, the solution service providing server 300 may be implemented as a computer that can connect to a remote server or terminal through a network. Here, the computer may include, for example, a laptop equipped with a navigation system and a web browser, a desktop, a laptop, etc.

적어도 하나의 관리자 단말(400)은, 포털 솔루션 서비스 관련 웹 페이지, 앱 페이지, 프로그램 또는 애플리케이션을 이용하여 동적 메뉴관리, 포틀릿 관리, 권한 관리 및 사용자 관리를 수행하는 관리자의 단말일 수 있다.At least one administrator terminal 400 may be an administrator terminal that performs dynamic menu management, portlet management, authority management, and user management using web pages, app pages, programs, or applications related to the portal solution service.

여기서, 적어도 하나의 관리자 단말(400)은, 네트워크를 통하여 원격지의 서버나 단말에 접속할 수 있는 컴퓨터로 구현될 수 있다. 여기서, 컴퓨터는 예를 들어, 네비게이션, 웹 브라우저(WEB Browser)가 탑재된 노트북, 데스크톱(Desktop), 랩톱(Laptop) 등을 포함할 수 있다. 이때, 적어도 하나의 관리자 단말(400)은, 네트워크를 통해 원격지의 서버나 단말에 접속할 수 있는 단말로 구현될 수 있다. 적어도 하나의 관리자 단말(400)은, 예를 들어, 휴대성과 이동성이 보장되는 무선 통신 장치로서, 네비게이션, PCS(Personal Communication System), GSM(Global System for Mobile communications), PDC(Personal Digital Cellular), PHS(Personal Handyphone System), PDA(Personal Digital Assistant), IMT(International Mobile Telecommunication)-2000, CDMA(Code Division Multiple Access)-2000, W-CDMA(W-Code Division Multiple Access), Wibro(Wireless Broadband Internet) 단말, 스마트폰(Smartphone), 스마트 패드(Smartpad), 타블렛 PC(Tablet PC) 등과 같은 모든 종류의 핸드헬드(Handheld) 기반의 무선 통신 장치를 포함할 수 있다.Here, at least one manager terminal 400 may be implemented as a computer capable of accessing a remote server or terminal through a network. Here, the computer may include, for example, a laptop equipped with a navigation system and a web browser, a desktop, a laptop, etc. At this time, at least one manager terminal 400 may be implemented as a terminal capable of accessing a remote server or terminal through a network. At least one manager terminal 400 is, for example, a wireless communication device that guarantees portability and mobility, and includes navigation, personal communication system (PCS), global system for mobile communications (GSM), personal digital cellular (PDC), PHS (Personal Handyphone System), PDA (Personal Digital Assistant), IMT (International Mobile Telecommunication)-2000, CDMA (Code Division Multiple Access)-2000, W-CDMA (W-Code Division Multiple Access), Wibro (Wireless Broadband Internet) ) It may include all types of handheld-based wireless communication devices such as terminals, smartphones, smartpads, and tablet PCs.

도 2는 도 1의 시스템에 포함된 솔루션 서비스 제공 서버를 설명하기 위한 블록 구성도이고, 도 3 및 도 4는 본 발명의 일 실시예에 따른 포털 솔루션 서비스가 구현된 일 실시예를 설명하기 위한 도면이다.Figure 2 is a block diagram for explaining the solution service providing server included in the system of Figure 1, and Figures 3 and 4 are for explaining an embodiment in which the portal solution service according to an embodiment of the present invention is implemented. It is a drawing.

도 2를 참조하면, 솔루션 서비스 제공 서버(300)는, 통합로그인부(310), 페이지제공부(320), 반응형웹제공부(330), 개인화부(340), 돋보기부(350), 폰트사이즈조정부(360), 표준준수부(370), 시간외근무관리부(380), 공지제공부(390), 일정안내부(391) 및 일정관리부(393)를 포함할 수 있다.Referring to Figure 2, the solution service providing server 300 includes an integrated login unit 310, a page providing unit 320, a responsive web providing unit 330, a personalization unit 340, a magnifying glass unit 350, and a font. It may include a size adjustment department (360), a standard compliance department (370), an overtime management department (380), a notice provision department (390), a schedule information department (391), and a schedule management department (393).

본 발명의 일 실시예에 따른 솔루션 서비스 제공 서버(300)나 연동되어 동작하는 다른 서버(미도시)가 적어도 하나의 사용자 단말(100) 및 적어도 하나의 관리자 단말(400)로 포털 솔루션 서비스 애플리케이션, 프로그램, 앱 페이지, 웹 페이지 등을 전송하는 경우, 적어도 하나의 사용자 단말(100) 및 적어도 하나의 관리자 단말(400)은, 포털 솔루션 서비스 애플리케이션, 프로그램, 앱 페이지, 웹 페이지 등을 설치하거나 열 수 있다. 또한, 웹 브라우저에서 실행되는 스크립트를 이용하여 서비스 프로그램이 적어도 하나의 사용자 단말(100) 및 적어도 하나의 관리자 단말(400)에서 구동될 수도 있다. 여기서, 웹 브라우저는 웹(WWW: World Wide Web) 서비스를 이용할 수 있게 하는 프로그램으로 HTML(Hyper Text Mark-up Language)로 서술된 하이퍼 텍스트를 받아서 보여주는 프로그램을 의미하며, 예를 들어 넷스케이프(Netscape), 익스플로러(Explorer), 크롬(Chrome) 등을 포함한다. 또한, 애플리케이션은 단말 상의 응용 프로그램(Application)을 의미하며, 예를 들어, 모바일 단말(스마트폰)에서 실행되는 앱(App)을 포함한다.The solution service providing server 300 or another server (not shown) operating in conjunction with an embodiment of the present invention provides a portal solution service application to at least one user terminal 100 and at least one administrator terminal 400, When transmitting a program, app page, web page, etc., at least one user terminal 100 and at least one administrator terminal 400 can install or open the portal solution service application, program, app page, web page, etc. there is. Additionally, a service program may be run on at least one user terminal 100 and at least one administrator terminal 400 using a script executed in a web browser. Here, a web browser is a program that allows the use of web (WWW: World Wide Web) services and refers to a program that receives and displays hypertext written in HTML (Hyper Text Mark-up Language), for example, Netscape. , Explorer, Chrome, etc. Additionally, an application refers to an application on a terminal and includes, for example, an app running on a mobile terminal (smartphone).

도 2를 참조하면, 통합로그인부(310)는, 기관 내 적어도 하나의 페이지가 SSO(Single Sign On)으로 연동되도록 설정할 수 있다. 통합로그인부(310)는, SSO(Single Sign On)을 이용할 수 있다. 이때, SSO는 사용자가 하나의 로그인 아이디 및 비밀번호를 사용하여 복수의 페이지나 애플리케이션에 엑세스할 수 있도록 허용하는 사용자 인증 서비스인데, 주인증기관인 IdP(Identity Provider)와 서비스기관인 RP(Resource Provider)로 구성된다. IdP에서는 사용자 인증을 수행하고, RP에서는 웹서비스를 제공한다. RP는 IdP의 사용자계정을 위임받아 계정을 생성한다. 사용자는 IdP에서의 계정 로그인을 통해 RP에 로그인할 수 있다. RP의 사용자 계정은 IdP의 사용자 계정에 종속적이므로, IdP에서 사용자 계정의 인증 정보가 변경되면 연동된 RP 계정의 로그인 상태가 변경되어야 한다. 이때, 로그인 상태 변경은 IdP 및 RP에서 로그인된 사용자 계정을 로그아웃시키는 과정을 의미한다. 즉, IdP의 이전 인증 정보로 로그인되었던 RP 계정을 로그아웃시키고 새로운 인증 정보로 사용자를 다시 인증해야 하지만, IdP와 RP는 독립된 웹사이트이므로, IdP가 사용자 계정의 인증 정보가 변경되었음을 연동된 RP과 공유하지 않는 경우, RP는 사용자 계정의 로그인 상태를 변경해야함을 알지 못한다. 즉, 로그인 상태가 변경되지 않으면 두 계정의 연동은 부분적으로 단절되어 보안 문제점을 야기한다. 또, 구글과 같은 IdP의 계정을 이용한다면 추가적인 계정 또는 비밀번호 생성 없이 SSO를 지원하는 RP의 웹서비스에 쉽게 접근할 수 있다. 만약 공격자가 사용자의 IdP 계정 탈취에 성공한다면, 공격자는 수많은 RP에서도 사용자의 계정을 통제할 수 있게 된다. 공격자가 탈취한 IdP 계정을 이용하여 여러 웹 사이트들에서 사용자의 정보에 접근하기 전에, 사용자는 후속 조치(Remediation Action)를 취하여 공격자의 접근을 막아야 한다.Referring to FIG. 2, the integrated login unit 310 can be set to link at least one page within the organization through SSO (Single Sign On). The integrated login unit 310 can use SSO (Single Sign On). At this time, SSO is a user authentication service that allows users to access multiple pages or applications using one login ID and password. It consists of an IdP (Identity Provider) as the main certification authority and an RP (Resource Provider) as a service organization. do. The IdP performs user authentication, and the RP provides web services. The RP is delegated the user account of the IdP and creates the account. Users can log in to the RP by logging into their account at the IdP. Since the RP's user account is dependent on the IdP's user account, if the authentication information of the user account in the IdP is changed, the login status of the linked RP account must be changed. At this time, changing the login status means the process of logging out the logged in user account from the IdP and RP. In other words, you must log out of the RP account that was logged in with the IdP's previous authentication information and re-authenticate the user with the new authentication information. However, since the IdP and RP are independent websites, the IdP must notify the linked RP that the user account's authentication information has changed. If not shared, the RP will not know that the login status of the user account needs to be changed. In other words, if the login status is not changed, the connection between the two accounts is partially disconnected, causing security problems. Additionally, if you use an IdP account such as Google, you can easily access RP's web service that supports SSO without creating an additional account or password. If an attacker succeeds in hijacking a user's IdP account, the attacker will be able to control the user's account in numerous RPs. Before an attacker accesses user information on multiple websites using a stolen IdP account, the user must take follow-up action (remediation action) to block the attacker's access.

이때, 후속조치 중 RP 비밀번호 변경, RP에서 IdP와의 연동해제, RP 계정 삭제의 3개가 공격자의 세션을 끊어내지 못하는 것은 RP에게 책임이 존재한다. 공격자의 세션을 제대로 끊어내지 못하는 경우, 공격자가 사용자의 민감한 정보를 탈취하거나 정상적인 사용자처럼 활동할 수 있다는 심각한 보안 문제가 발생할 수 있다. 따라서, RP는 다음과 이하와 같은 방식을 구현하도록 함으로써, 사용자의 후속조치 이후 공격자의 세션을 확실하게 끊어내야만 한다. ① RP의 비밀번호가 변경되었을 때 모든 세션을 종료하도록 구현할 수 있다. ② 또, RP에서 IdP와의 연동 해제가 이루어졌을 때 RP의 비밀번호를 새롭게 생성하고, 그 후 모든 세션을 종료하도록 구현할 수 있다. ③ 또, 사용자로부터 RP 계정 삭제 요청이 들어왔을 때 즉시 모든 세션을 종료하도록 구현할 수 있다. 물론, 상술한 방법 이외에도 다양한 방법이 존재할 수 있으며 열거된 것들로 한정되지 않는다.At this time, the RP is responsible for failing to terminate the attacker's session through three follow-up measures: changing the RP password, disconnecting the RP from the IdP, and deleting the RP account. If the attacker's session is not properly terminated, a serious security problem may arise in which the attacker can steal the user's sensitive information or act like a normal user. Therefore, the RP must reliably disconnect the attacker's session after the user's follow-up action by implementing the following methods. ① It can be implemented to terminate all sessions when the RP password is changed. ② Additionally, when the RP is disconnected from the IdP, a new RP password can be created and all sessions terminated thereafter. ③ Additionally, when a request to delete an RP account is received from a user, all sessions can be terminated immediately. Of course, various methods may exist in addition to the methods described above and are not limited to those listed.

페이지제공부(320)는, 사용자 단말(100)의 사용자의 신분에 따른 기본 페이지를 제공할 수 있다. 예를 들어, 도 3f와 같이 포털 솔루션을 적용한 기관이 대학교라는 교육기관이라면, 사용자(User)가 학생인지, 시간강사인지, 대학원생인지, 졸업생인지, 교원인지, 직원인지, 대학생인지 등의 신분을 설정할 수 있다. 예를 들어, 학생이라면 학생의 레포트 점수를 입력하는 시간강사 또는 교원의 페이지에 엑세스할 수 없고, 졸업생이라면 재학생에게 제공되는 콘텐츠나 도서관 페이지에 엑세스할 수 없다. 이와 같이 각 신분에 따른 기본 페이지를 제공하고, 각 신분에 따라 학사일정, 공지, 알람 등을 선별적으로 받을 수 있는 기본 페이지를 제공할 수 있다. The page providing unit 320 may provide a basic page according to the identity of the user of the user terminal 100. For example, as shown in Figure 3f, if the institution that applied the portal solution is an educational institution called a university, the user's status as a student, part-time instructor, graduate student, graduate, faculty member, employee, college student, etc. You can set it. For example, if you are a student, you cannot access the part-time instructor or faculty page where students' report scores are entered, and if you are a graduate, you cannot access content provided to current students or the library page. In this way, a basic page can be provided for each status, and a basic page that can selectively receive academic schedules, notices, alarms, etc. can be provided according to each status.

반응형웹제공부(330)는, 사용자 단말(100)의 화면의 크기에 따라 포털 페이지가 최적화되도록 반응형웹을 제공할 수 있다. 사용자 단말(100)은, 기관 내 사용자의 신분에 대응하는 기본 페이지를 출력하고, 반응형웹(Responsive Web)을 기반으로 화면의 크기에 따라 최적화되도록 디스플레이할 수 있다. 이때, 반응형웹은, 말 그대로 데스크톱, TV, 내비게이션, 모바일 단말기 등 다양한 단말기의 화면에 반응하는 웹사이트로 각 단말기별로 별개의 웹사이트를 제작하기보다 하나의 HTML(HyperText Markup Language) 소스 코드를 사용하여 하나의 웹사이트를 제작하고, 사용자가 접속하는 다양한 단말기 화면의 크기에 자동으로 반응해서 웹사이트의 레이아웃을 조절하여 최적화된 레이아웃을 보여주는 기술을 말한다.The responsive web provider 330 can provide a responsive web so that the portal page is optimized according to the screen size of the user terminal 100. The user terminal 100 can output a basic page corresponding to the user's identity within the organization and display it to be optimized according to the size of the screen based on the Responsive Web. At this time, a responsive web is literally a website that reacts to the screens of various terminals such as desktop, TV, navigation, and mobile terminals, and uses a single HTML (HyperText Markup Language) source code rather than creating a separate website for each terminal. This refers to a technology that creates a website and shows an optimized layout by automatically responding to the size of the various terminal screens that the user accesses and adjusting the layout of the website.

<반응형웹><Responsive web>

반응형 웹사이트를 제작하기 위해서는 몇 가지 공통적인 기술 요소가 필요하다. ① 첫 번째는 적용하려는 스타일들을 단말기의 해상도에 맞게 레이아웃을 전환하도록 하는 CSS(Cascading Style Sheets)3의 미디어 쿼리(Media Query)이다. ② 두 번째는 유동형 그리드(Fluid Grid)이며, ③ 세 번째 기술요소는 유동형 이미지(Fluid Image)이다. 반응형웹의 첫 번째 기술요소인 미디어 쿼리는 CSS3의 모듈 중 하나로, 사이트에 접속하는 단말기별로 적용할 CSS 파일을 다르게 지정해 주는 기술이다. 미디어 쿼리는 다른 반응형웹 기술과 달리 자바스크립트 라이브러리를 추가하면 인터넷 익스플로러 8 이하 버전을 비롯한 여러 브라우저에서 사용할 수 있다는 장점이 있다. 미디어 쿼리의 속성은 단말기의 종류, 웹 브라우저의 가로 해상도, 그리드와 비트맵 설정 등과 같은 여러 가지 항목으로 이루어져 있다. 미디어 쿼리의 경우 여러 가지 속성으로 사용자 단말기 상태를 확인하여 웹페이지를 제공하지만, 모바일 단말 유형이나 해상도 등 미디어 쿼리 속성을 정할 수 있는 여러 가지 값들이 많아지면서 각 속성별로 이에 대응하는 정확한 중단점(Break Point)이 나와 있지 않은 상태이다. Creating a responsive website requires several common technical elements. ① The first is the Media Query of CSS (Cascading Style Sheets)3, which changes the layout of the styles to be applied to suit the resolution of the terminal. ② The second is the Fluid Grid, and ③ the third technology element is the Fluid Image. Media query, the first technical element of the responsive web, is one of the modules of CSS3 and is a technology that specifies a different CSS file to be applied to each terminal accessing the site. Media queries, unlike other responsive web technologies, have the advantage of being able to be used in multiple browsers, including Internet Explorer 8 and lower, by adding a JavaScript library. The properties of media queries consist of several items such as the type of terminal, horizontal resolution of the web browser, grid and bitmap settings, etc. In the case of media queries, a web page is provided by checking the user terminal status using various properties, but as the number of values that can determine media query properties such as mobile terminal type and resolution increases, the exact breakpoint (Break point) corresponding to each property has increased. Point) is not displayed.

중단점이란 미디어 쿼리를 작성할 때 화면 크기에 따라 서로 다른 CSS를 적용할 분기점을 말한다. 이 중단점을 어떻게 지정하느냐에 따라 CSS가 달라지고 화면 레이아웃이 바뀌는데, 대부분 단말기의 화면 크기를 기준으로 한다. 하지만 시중의 모든 단말기를 반영할 수는 없기 때문에 모바일 단말기와 태블릿, 데스크톱 정도로만 구분한다. 그리고 처리 속도나 화면 크기 등에서 다른 단말기보다 모바일 단말기의 제약 조건이 더 많기 때문에 모바일 단말기의 레이아웃을 기본으로 하여 CSS를 만든다. 그리고 나서 좀 더 사양이 좋고 화면이 큰 태블릿과 데스크톱에 맞춰 더 많은 기능과 스타일을 추가한다. 계속적으로 많은 모바일 단말기가 출시되어도 여러 가지 값을 이용하는 속성의 기준이 확실히 정해진다면 공간정보를 포함한 많은 콘텐츠에서 미디어 쿼리를 이용한 반응형웹의 활용도가 높아질 수 있다.A breakpoint is a branch point at which different CSS will be applied depending on the screen size when writing a media query. Depending on how you specify this breakpoint, the CSS and screen layout change, but in most cases, it is based on the screen size of the terminal. However, since it cannot reflect all terminals on the market, it is only divided into mobile terminals, tablets, and desktops. And because mobile terminals have more constraints than other terminals in terms of processing speed and screen size, CSS is created based on the layout of the mobile terminal. Then, more features and styles are added to suit tablets and desktops with better specs and larger screens. Even as many mobile terminals continue to be released, if the standards for attributes that use various values are clearly established, the usability of responsive web using media queries can increase in many contents, including spatial information.

반응형웹의 두 번째 기술요소는 유동형 그리드 시스템(Fluid Grid System)이다. 유동형 그리드 시스템의 그리드(Grid)란 격자, 바둑판이라고 할 수 있는데, 화면을 바둑판처럼 여러 개의 기본 요소로 나눈 후 몇 개씩 합쳐 내용을 배치하는 것을 그리드 시스템이라고 한다. 이때, 화면을 나누는 기본요소를 칼럼(Column)이라고 한다. 웹사이트를 설계할 때 그리드 시스템을 이용하면 화면을 규칙적으로 배열할 수 있기 때문에 레이아웃을 일관성 있게 유지할 수 있다. 따라서, 웹사이트 제작도 쉽고 보는 사람에게도 안정감을 줄 수 있다. 고정 그리드(Fixed Grid) 시스템에서는 화면 너비를 몇 픽셀(PX)로 하는가에 따라 나누기도 하고, 화면을 몇 개의 칼럼으로 나누는가에 따라 나누기도 한다. 화면의 너비를 고정해 놓고 그 너비 안에서 칼럼을 나누어 요소들을 배치하는 방법이다. 이렇게 화면 너비를 특정 값으로 고정해 놓으면 그 안에 표시할 요소들의 너빗값을 지정할 수 있고, 너비가 항상 일정하게 표시되기 때문에 원하는 레이아웃을 만들기도 쉽다. The second technical element of the responsive web is the Fluid Grid System. The grid of the fluid grid system can be said to be a grid or a checkerboard. The screen is divided into several basic elements like a checkerboard and then put together to place content, which is called a grid system. At this time, the basic element that divides the screen is called a column. When designing a website, using a grid system allows you to arrange the screens regularly, thus keeping the layout consistent. Therefore, it is easy to create a website and can provide a sense of stability to the viewer. In the Fixed Grid system, the screen is divided depending on how many pixels (PX) the screen width is, and it is also divided depending on how many columns the screen is divided into. This is a method of fixing the width of the screen and arranging elements by dividing columns within that width. If you fix the screen width to a specific value, you can specify the width values of the elements to be displayed within it, and since the width is always displayed consistently, it is easy to create the layout you want.

하지만, 여러 종류의 단말기를 이용해서 접속하면 브라우저 창의 너비가 작은 단말기에서 접속했을 때 웹 사이트 일부가 가려져서 스크롤 막대를 사용해 화면을 옮기면서 봐야 한다. 이렇게 너빗값이 고정된 고정 그리드의 한계를 해결한 것이 바로 유동형 그리드이다. 화면 너비를 특정 값으로 고정해 놓지 않고 브라우저 창의 너비에 따라 콘텐츠 너비가 달라지게 하는 방법이다. 이 유동형 그리드는 반응형웹의 중요 요소 중 하나이다. 유동형 그리드는 웹 콘텐츠 모두를 감싸고 있는 요소의 너비를 기준으로 각 요소의 너비를 계산하는 방법이다. 예를 들어, 콘텐츠 전체를 감싸고 있는 요소를 #container라고 한다면 #container 안에 있는 각 요소의 너비를 #container의 너빗값으로 나눈 후 100을 곱하면 된다. 소수점 이하가 길어지면 소수점 이하 다섯 자리까지만 표시해 주는 것이 좋다. 유동형 그리드에서 너비를 계산하는 방법으로 너빗값을 구한 후 헤더, 내비게이션, 주 콘텐츠, 부 콘텐츠 등과 같은 페이지의 구성 요소를 고정된 픽셀(Pixel, PX)이 아닌 상대 비율인 % 등과 같은 단위로 사용한다. 이러한 유동형 그리드는 미디어 쿼리와의 조합을 통하여 단말기에 따른 가변적 최적 레이아웃 표출이 가능하도록 한다.However, when accessing using various types of terminals, some parts of the website are hidden when accessing from a terminal with a small browser window, so you have to use the scroll bar to move the screen to view it. The floating grid is what solves the limitations of the fixed grid with a fixed width value. This is a method that allows the content width to vary depending on the width of the browser window rather than fixing the screen width to a specific value. This fluid grid is one of the important elements of a responsive web. Liquid grid is a method of calculating the width of each element based on the width of the element surrounding all web content. For example, if the element that surrounds the entire content is called #container, divide the width of each element within #container by the width value of #container and multiply by 100. If the number of digits after the decimal point becomes long, it is better to display only up to five decimal places. After obtaining the width value by calculating the width in the fluid grid, page components such as header, navigation, main content, and sub-content are used in units such as %, which is a relative ratio, rather than fixed pixels (Pixel, PX). . This fluid grid enables variable optimal layout expression depending on the terminal through combination with media queries.

반응형 레이아웃은, 다섯 가지 패턴으로 나눌 수 있는데, 유동형 패턴(Mostly Fluid) 레이아웃은 가장 널리 사용되는 방식으로 모바일 화면을 제외한 대부분의 화면에서 사이트의 레이아웃을 그대로 유지하면서 브라우저 창의 너비에 따라 콘텐츠의 크기만 조절한다. 아주 큰 화면에서는 콘텐츠 영역의 너비를 일정하게 유지하기 위해 좌우에 여백을 남겨주고, 모바일 화면에서는 콘텐츠가 수직으로 쌓여 표시되는 방식이다. 칼럼 드롭(Column Drop) 패턴은 여러 칼럼으로 구성된 레이아웃에서 흔히 사용하는 패턴으로, 화면 너비가 좁아지면 칼럼들이 아래로 떨어지도록(Drop) 구성한다. 이 패턴 역시 모바일 기기 화면 크기가 되면 모든 칼럼이 하나씩 수직으로 배치된다. 어느 위치에서 칼럼이 아래로 떨어질지는 화면 너비에 따라 혹은 콘텐츠 흐름에 따라 결정할 수 있다. 레이아웃 이동(Layout Shifter) 패턴은 칼럼 드롭 패턴과 유사하게 화면 크기에 따라 칼럼을 드롭해 레이아웃을 재배치하는 형태이다. 칼럼 드롭 패턴이 원래 순서를 유지하면서 칼럼을 아래로 드롭하는 것이라면 레이아웃 이동 패턴은 칼럼의 순서에 크게 구애받지 않고 칼럼을 드롭한다. 레이아웃을 많이 바꾸게 되면 제작에 더 많은 노력이 들기 때문에 칼럼 드롭 패턴보다는 자주 사용하지 않지만, 접속하는 기기에 따라 다른 모습을 보여주기 때문에 방문자에게 색다른 경험을 줄 수 있다.Responsive layout can be divided into five patterns. Mostly Fluid layout is the most widely used method, maintaining the layout of the site on most screens except mobile screens and scaling the content according to the width of the browser window. Just adjust it. On very large screens, blank spaces are left on the left and right to keep the width of the content area constant, and on mobile screens, the content is stacked vertically. The Column Drop pattern is a pattern commonly used in layouts consisting of multiple columns, and is configured so that the columns drop (drop) when the screen width narrows. This pattern also places all columns vertically one by one when the mobile device screen size is adjusted. Where a column falls can be determined based on the screen width or content flow. The Layout Shifter pattern, similar to the column drop pattern, is a form of rearranging the layout by dropping columns according to the screen size. If the column drop pattern is to drop a column down while maintaining the original order, the layout movement pattern is to drop the column without being greatly affected by the order of the columns. Because changing the layout a lot requires more production effort, it is less frequently used than the column drop pattern, but it can give visitors a unique experience because it shows a different appearance depending on the connected device.

살짝 수정(Tiny Tweaks) 패턴은 크기별로 스크린에 맞는 레이아웃이나 디자인을 미세하게 수정하여 제공함으로써 스크린 기기별로 약간의 이미지 수정을 통해 콘텐츠를 제공해주는 방식이다. 마지막으로 캔버스 밖으로(Off Canvas) 패턴은 스크린에 크기별로 콘텐츠의 칼럼 중 일부분만을 볼 수 있도록 하여 사용자가 슬라이드 시키는 방식으로 원하는 콘텐츠 일부분을 볼 수 있도록 제공하는 반응형웹 구현 방식을 의미한다. 반응형웹 디자인을 모바일 화면에 맞게 적용하다 보면 콘텐츠 칼럼을 하나씩 수직으로 쌓게 된다. 그래서 콘텐츠가 많으면 작은 모바일 화면에 다 담기 힘든 경우가 있다. 이럴 때 일부 콘텐츠를 화면 밖에 감춰두었다가 사용자가 필요로 할 때만 화면에 나타나도록 하는 패턴이다. 이러한 레이아웃을 이용하여 반응형 웹사이트를 만들 때, 굳이 하나의 레이아웃만 사용하지 않고 필요에 따라 2 개 혹은 3 개의 레이아웃을 섞어서 사용 가능하다.The Tiny Tweaks pattern is a method of providing content through slight image modification for each screen device by providing fine modifications to the layout or design to fit the screen by size. Lastly, the Off Canvas pattern refers to a responsive web implementation method that allows only a portion of the content columns by size on the screen to be visible, allowing users to view the desired portion of content by sliding it. When applying responsive web design to the mobile screen, content columns are stacked vertically one by one. Therefore, if there is a lot of content, it may be difficult to fit it all on a small mobile screen. In this case, it is a pattern that hides some content off the screen and makes it appear on the screen only when the user needs it. When creating a responsive website using this layout, you can use a mixture of two or three layouts as needed rather than just using one layout.

반응형웹의 세 번째 기술요소는 유동형 이미지(Fluid Image)이다. 반응형웹 사이트의 레이아웃은 브라우저 창의 너비에 따라 화면 요소의 너비도 함께 늘어나거나 줄어드는 것이 기본이다. 그렇다면 애초에 크기가 고정되어 있는 이미지나 동영상 같은 멀티미디어 요소들을 사용하면 문제점이 생긴다. 유동형 이미지란 화면 너비에 따라 이미지의 너비와 높이가 바뀌는 이미지를 말한다. 이미지 같은 멀티미디어 요소들은 웹 문서에 삽입할 때 너비와 높이 값을 지정하게 되어 있고, 값을 지정하지 않을 경우 원래 크기대로 삽입된다. 이때, 화면 너빗값에 따라 이미지의 너비가 조절되도록 하기 위해 CSS를 이용해 이미지 너빗값을 상대 비율인 %로 지정하는데, 원래 크기 이상으로 늘리게 되면 화질이 깨지게 된다. 따라서, Max-Width 속성을 사용해 최대 너빗값 이상으로는 확대되지 않도록 하는 것이 가장 기본적인 유동형 이미지 지정 방법이다. 유동형 이미지로 처리했을 때 생길 수 있는 문제점이 몇 가지 발견되었는데, 가장 큰 문제는 레티나(Retina) 이미지처럼 높은 해상도를 가진 이미지의 처리문제이다. 웹 사이트 로고나 작은 아이콘 같은 이미지는 큰 문제가 없지만 레티나급의 이미지를 크기만 줄여서 모바일 단말기에 표시하면 화면에 보여지는 모습은 작아 보여도 이미지 파일을 다운로드하는 데 꽤 오랜 시간이 걸린다. 미디어 쿼리를 이용해 데스크톱에서는 큰 이미지를 표시하고 모바일 단말기에서는 작은 이미지를 표시하게끔 지정하더라도 웹 브라우저에서는 웹사이트에 포함된 모든 이미지를 일단 불러온 후에 단말기에 따라 어떤 이미지는 감추고 어떤 이미지는 표시하는 방법을 사용한다. 따라서 모바일 단말기 입장에서는 불필요한 레티나 이미지 파일까지 불러오게 된다. The third technical element of responsive web is fluid image. The basic layout of a responsive website is that the width of screen elements increases or decreases depending on the width of the browser window. Then, problems arise when using multimedia elements such as images or videos that have a fixed size in the first place. A floating image is an image whose width and height change depending on the screen width. When inserting multimedia elements such as images into a web document, you must specify width and height values. If no values are specified, they are inserted in their original size. At this time, in order to adjust the width of the image according to the screen width value, CSS is used to specify the image width value as a relative ratio (%), but if it is increased beyond the original size, the image quality will be lost. Therefore, the most basic way to specify a fluid image is to use the Max-Width property to prevent it from expanding beyond the maximum width value. Several problems that may arise when processing fluid images were discovered, the biggest problem being the processing of high-resolution images such as Retina images. There is no major problem with images such as website logos or small icons, but if you reduce the size of a retina-level image and display it on a mobile device, it takes quite a long time to download the image file, even though it appears small on the screen. Even if you use a media query to display large images on desktops and small images on mobile devices, the web browser loads all images included in the website and then hides some images and displays others depending on the device. use. Therefore, from the mobile terminal's perspective, unnecessary retina image files are loaded.

반응형웹의 장점은 첫 번째 단말기의 화면 크기나 해상도에 구애받지 않는다는 것이다. 반응형웹 기술을 이용하면 데스크톱이나 스마트폰뿐 아니라 스마트 TV, 게임 콘솔 등 웹 브라우저가 포함된 단말기라면 어떤 단말기에서나 화면 크기와 해상도에 상관없이 가장 알맞은 레이아웃을 보여준다. 두 번째 화면의 변화에 즉시 반응한다는 것이다. 모바일 화면에서 화면 방향을 가로나 세로로 돌리더라도 즉시 그 방향에 맞게 사이트 내용이 배치된다. 데스크톱에서도 웹 브라우저 화면 크기를 바꾸면 새로 바뀐 화면 크기에 맞게 웹 사이트 레이아웃이 바뀐다. 세 번째 어느 기기에서든 사이트 주소가 같다. 반응형 웹사이트는 하나의 사이트주소를 이용한다. 모바일 사이트 주소를 따로 만들지 않아도 되는 것이다. 사용자 입장에서는 데스크톱의 즐겨찾기를 동기화해서 여러 단말기에서 사용할 수 있고, 개발자 입장에서도 웹사이트 주소를 통일할 수 있기 때문에 검색엔진에 최적화시킬 수 있다. 네 번째 단말기마다 따로 페이지를 만드는 것이 아니어서 관리해야 할 코드가 한 가지뿐이기 때문에 코드와 콘텐츠 유지가 간단하고 편리하다. 특히, 반응형웹에 사용되는 코드들은 Server 측 코드가 없고 HTML과 CSS로만 되어 있어 복잡하지 않다. 다섯 번째 최신 웹 표준을 따른다. 반응형웹에서 사용하는 기술들은 국제 웹 표준화 기구인 W3C에서 웹 표준으로 지정한 HTML과 CSS로 이루어져 있고 주요 최신 브라우저들에서 지원하고 있다.The advantage of responsive web is that it is not limited by the screen size or resolution of the first terminal. Using responsive web technology, the most appropriate layout is displayed regardless of screen size and resolution on any terminal with a web browser, such as a smart TV or game console, as well as a desktop or smartphone. It responds immediately to changes on the second screen. Even if you rotate the screen orientation horizontally or vertically on a mobile screen, site content is immediately arranged according to that orientation. Even on desktops, if you change the web browser screen size, the website layout changes to match the new screen size. Third, the site address is the same on any device. Responsive websites use a single site address. There is no need to create a separate mobile site address. From a user's perspective, they can synchronize their desktop favorites and use them on multiple devices, and from a developer's perspective, website addresses can be unified and optimized for search engines. Since there is no need to create a separate page for each fourth terminal, there is only one code to manage, making code and content maintenance simple and convenient. In particular, the codes used in responsive web are not complicated as there is no server-side code and only consists of HTML and CSS. Follows the fifth latest web standard. The technologies used in the responsive web consist of HTML and CSS, which have been designated as web standards by W3C, an international web standardization organization, and are supported by major modern browsers.

<적응형웹><Adaptive Web>

접속하는 단말기를 인식해서 그에 맞는 UI를 조금 더 세밀하게 구성하고 싶다면, 반응형웹보다는 구스타프손(Gustafson)이 제안한 적응형웹(Adaptive Web)을 이용할 수도 있다. 적응형웹은 데스크톱, 스마트폰, 태블릿 기기 등 다양한 환경에 대응하도록 미리 웹 페이지 구성 요소를 최적의 상태로 마련해 두고 웹 서비스 요청시 해당하는 웹 페이지를 제공한다. 즉, 반응형웹이 기기 해상도와 사용자 선호에 따라 모든 요소와 그리드가 서로 영향을 주며 유기적으로 바뀌는 것 이라면, 적응형 웹은 해상도를 포함한 사용자 선호에 따라 여러 가지 레이아웃과 디자인을 표출하는 것이다.If you want to recognize the connected terminal and configure the UI accordingly in more detail, you can use the Adaptive Web proposed by Gustafson rather than the Responsive Web. The adaptive web prepares web page components in an optimal state in advance to respond to various environments such as desktops, smartphones, and tablet devices, and provides the corresponding web page when a web service is requested. In other words, while a responsive web is one in which all elements and grids affect each other and change organically depending on device resolution and user preference, an adaptive web expresses various layouts and designs depending on user preference, including resolution.

개인화부(340)는, 사용자 단말(100)에서 기본 페이지를 구성하는 적어도 하나의 단위 포틀릿의 위치 및 종류를 조정하는 경우 세팅을 저장할 수 있다. 개인화부(340)는, 사용자 단말(100)에서 적어도 하나의 단위 포틀릿의 위치를 드래그 앤 드롭(Drag & Drop)으로 이동시킨 경우, 드래그 앤 드롭으로 이동된 단위 포틀릿의 위치를 저장 및 세팅할 수 있다. 사용자 단말(100)은, 화면을 구성하는 적어도 하나의 단위 포틀릿(Portlet)의 위치 및 종류를 조정하여 개인화할 수 있다. 도 3w의 빨간색 박스를 참조하면, 포틀릿이란 포털 페이지를 구성하는 웹 콤포넌트(Web Component)로, 포털 페이지 내에 자유롭게 배치하여 포털 페이지를 구성할 수 있다. 즉, 재사용이 가능한 웹 구성요소로 포털 사용자들에게 관련 정보를 표시해주는데 사용된다. 포틀릿은 예를 들어, 네이버 포털 사이트에서는 검색창, 로그인 메뉴, 각종 레이아웃 내 단위 구성요소로 볼 수 있다. 포틀릿 표준은 개발자들에게 표준을 지원하는 어떠한 포털 사이트에도 쉽게 접목시킬 수 있는 포틀릿을 만들 수 있도록 해준다. 포틀릿 규격은 포틀릿과 포털 사이트 사이의 상호 운용성을 가능하게 해준다. 최근 자주 사용하는 포틀릿의 순서나 위치를 조정하도록 포털 사이트가 구성되고는 있지만, 원하는 영역이나 레이아웃에 원하는 포틀릿을 배치하는 직관적인 UI/UX는 존재하지 않는다. 이에 따라, 본 발명의 일 실시예는 학사지원시스템 등 다양한 기관이나 포털에서 사용자가 자주 사용하는 메뉴에 대응하는 포틀릿을 원하는 위치에 원하는 크기로 배치할 수 있는 기능을 지원한다. The personalization unit 340 may store settings when adjusting the position and type of at least one unit portlet constituting the basic page in the user terminal 100. When the position of at least one unit portlet is moved by drag and drop in the user terminal 100, the personalization unit 340 can store and set the position of the unit portlet moved by drag and drop. there is. The user terminal 100 can be personalized by adjusting the position and type of at least one unit portlet constituting the screen. Referring to the red box in FIG. 3w, a portlet is a web component that constitutes a portal page, and can be freely placed within the portal page to configure the portal page. In other words, it is a reusable web component that is used to display relevant information to portal users. For example, on the Naver portal site, portlets can be viewed as search boxes, login menus, and unit components within various layouts. The portlet standard allows developers to create portlets that can be easily integrated into any portal site that supports the standard. The portlet specification enables interoperability between portlets and portal sites. Recently, portal sites have been configured to adjust the order or location of frequently used portlets, but there is no intuitive UI/UX to place the desired portlet in the desired area or layout. Accordingly, an embodiment of the present invention supports the function of arranging portlets corresponding to menus frequently used by users in various institutions or portals, such as an academic support system, at a desired location and size.

이때, 본 발명의 일 실시예에 따른 개인화부(340)는, 각 사용자의 마우스가 클릭되는 키스트로크 또는 이벤트를 모두 모아서 히트맵(HeatMap)으로 작성한 후, 히트맵 내 빈도가 높은 영역의 포틀릿을 빈도순으로 좌측상단에서부터 하단으로 그 다음 우측상단에서부터 하단으로 제공할 수 있도록 자동 최적화를 진행할 수도 있다. 클릭 이벤트를 추출하는 것은 클릭이 발생한 XY 좌표와 이에 대응하는 포틀릿을 추출하면 되므로, 이하에서는 모바일 기반으로 터치 정보를 수집하는 것을 예로 들어 설명하기로 한다.At this time, the personalization unit 340 according to an embodiment of the present invention collects all keystrokes or events where each user's mouse is clicked, creates a heatmap, and then creates portlets in areas with high frequency in the heatmap. Automatic optimization can be performed to provide information in order of frequency, from top left to bottom, and then from top right to bottom. Extracting a click event can be accomplished by extracting the

<터치 정보 수집><Collection of touch information>

본 발명의 일 실시예는 루팅된 기기에 쉘 명령어를 이용하여 터치스크린에서 발생하는 이벤트를 직접 수집하는 애플리케이션을 이용할 수 있다. 애플리케이션 구현 시 필요한 명령어와 터치 정보를 확인하기 위해 입력 기기와 커널 입력 이벤트를 실시간으로 모니터링이 가능한 GetEvent 명령어를 이용할 수 있다. 터치스크린 이벤트만 추출하기 위해 터치스크린 입력 기기의 명칭을 확인하려면, Adb Shell GetEvent 명령어로 확인 가능하다. 일반적으로 /Dev/Input/Event1이 터치스크린이지만 이는 기기마다 다르므로 반드시 기기별로 확인이 필요할 수 있다. 위의 과정에서 찾아낸 정보를 조합하여 Adb Shell GetEvent-lt/Dev/Input/Event1 명령어를 입력하면 터치 정보를 수집할 수 있다.One embodiment of the present invention can use an application that directly collects events occurring on the touch screen using shell commands on a rooted device. To check the commands and touch information needed when implementing an application, you can use the GetEvent command, which can monitor input devices and kernel input events in real time. To check the name of the touch screen input device to extract only touch screen events, you can check it with the Adb Shell GetEvent command. Generally, /Dev/Input/Event1 is the touch screen, but this varies from device to device, so you may need to check for each device. Touch information can be collected by combining the information found in the above process and entering the Adb Shell GetEvent-lt/Dev/Input/Event1 command.

<애플리케이션 사용정보수집><Collection of application usage information>

애플리케이션 사용 정보는 안드로이드의 접근성 서비스를 이용하여 수집하도록 구현할 수 있다. 안드로이드에는 TalkBack 등 기본 내장 접근성 서비스가 있으며 개발자가 서비스를 만들어 배포할 수도 있다. 접근성 서비스는 백그라운드에서 동작하며 사용자 인터페이스에 이벤트가 발생하였을 때 AccessibilityEvent 값을 수신하여 처리하는 과정으로 구성되어 있다. 각 이벤트는 AccessibilityNodeInfo 객체 값을 포함하며 이로부터 화면상의 정보를 수집할 수 있다. 수집 가능한 애플리케이션 사용 정보는 패키지명, 클래스명, 뷰 이벤트 타입이 있다. 애플리케이션 사용 정보 수집기는 AccessibilityService를 상속받아 백그라운드에서 동작하도록 구현할 수 있다. 수집기 호출 및 데이터 수집은 onServiceConnected() 함수와 onAccessibilityEvent() 함수를 오버라이드하여 구현할 수 있다. 정보 수집은 AccessibilityEvent가 탐지되었을 때 호출되는 onAccessibilityEvent() 함수에 로깅 기술을 구현하여 이벤트 발생 시마다 애플리케이션 사용 정보와 터치 정보가 함께 수집되도록 할 수 있다.Application usage information can be collected using Android's accessibility service. Android has built-in accessibility services such as TalkBack, and developers can create and distribute services. The accessibility service operates in the background and consists of receiving and processing the AccessibilityEvent value when an event occurs in the user interface. Each event includes an AccessibilityNodeInfo object value, from which information on the screen can be collected. Application usage information that can be collected includes package name, class name, and view event type. The application usage information collector can be implemented to inherit AccessibilityService and run in the background. Collector calls and data collection can be implemented by overriding the onServiceConnected() function and onAccessibilityEvent() function. Information collection can be done by implementing logging technology in the onAccessibilityEvent() function, which is called when an AccessibilityEvent is detected, so that application usage information and touch information are collected together whenever an event occurs.

<특징 추출><Feature extraction>

데이터 수집 단계에서 수집한 데이터를 사용 데이터로 가공한다. 수집된 데이터들은 기계 학습에 이용하기 위해 벡터화될 수 있다. 사용 데이터는 총 N 차원의 벡터로 구성되며 패키지명, 클래스명, 뷰 이벤트명, 터치 시작 좌표(X,Y), 터치 종료 좌표(X,Y), 길이, 각도, 압력, 크기순으로 구성될 수 있다. 추출된 사용 데이터들은 기계 학습 알고리즘에 학습 모델 생성 또는 분류를 위한 테스트 데이터로 사용될 수 있다.The data collected during the data collection stage is processed into usage data. The collected data can be vectorized for use in machine learning. The usage data consists of a total of N-dimensional vectors and is composed in the following order: package name, class name, view event name, touch start coordinates (X, Y), touch end coordinates (X, Y), length, angle, pressure, and size. You can. The extracted usage data can be used as test data for creating a learning model or classification in a machine learning algorithm.

<터치정보 추출><Extracting touch information>

수집된 데이터로부터 길이, 각도의 데이터를 추가적으로 연산할 수 있다. 길이와 각도 연산은 간단한 삼각함수 및 피타고라스 정리로 연산이 가능하다. 터치 길이 값은 최초 터치가 시작된 점과 종료된 점 사이의 길이를 계산할 수 있다. 시점 A와 종점 B 사이의 직선거리 계산은 두 점 사이의 거리를 계산하거나, 터치 각도를 터치 시작점과 중간점, 중간점과 터치 종점 사이의 각을 계산하는 방법으로 구할 수 있다. 중간점은 터치 시작점과 터치 종점 사이 경로상의 최대 및 최소 좌표의 평균값으로 구성할 수 있다.Length and angle data can be additionally calculated from the collected data. Length and angle calculations can be performed using simple trigonometric functions and the Pythagorean theorem. The touch length value can be calculated as the length between the point where the first touch started and the point where it ended. Calculation of the straight-line distance between starting point A and end point B can be done by calculating the distance between two points, or calculating the touch angle by calculating the angle between the touch start point and the midpoint, and the midpoint and the touch end point. The midpoint can be configured as the average value of the maximum and minimum coordinates on the path between the touch start point and the touch end point.

<애플리케이션 사용정보 추출><Extraction of application usage information>

추출 단계에서 애플리케이션 사용 정보는 수집된 이벤트에서 패키지명, 클래스명, 뷰 이벤트명을 추출한다. 각 정보는 이벤트 타입의 메소드를 이용하여 수집한다. 패키지는 getPackageName(), 클래스는 getClass-Name(), 뷰 이벤트명은 GetEventType() 메소드를 이용한다. 터치 정보와는 다르게 추가적인 연산은 포함하지 않고 문자열 그대로 사용 데이터로 사용할 수 있다. 물론 상술한 방법 이외에도 사용자 단말(100)에서 사용자를 촬영하는 웹캠 등의 카메라를 이용하여 아이트래킹 및 시선추적 데이터를 바탕으로 대표적 시각주의도 분석 지표인 응시시간(Dwell Time)과 시선고정시간(Fixation Time)을 분석하고, 시각적 주의도를 살펴보기 위해 히트맵(HeatMap) 분석을 실시할 수도 있다.In the extraction stage, the application usage information extracts the package name, class name, and view event name from the collected events. Each information is collected using event type methods. Use the getPackageName() method for packages, getClass-Name() for classes, and GetEventType() for view event names. Unlike touch information, it does not involve additional operations and can be used as usage data as a string. Of course, in addition to the above-described method, the user terminal 100 uses a camera such as a webcam that captures the user to determine the representative visual attention analysis indicators, such as dwell time and fixation time, based on eye tracking and eye tracking data. Time) and heatmap analysis can also be performed to examine visual attention.

돋보기부(350)는, 포털 페이지 또는 기본 페이지 상단에 확대 아이콘을 제공하고, 사용자 단말(100)에서 확대 아이콘을 선택한 후, 적어도 하나의 단위 포틀릿에 마우스 오버(Mouse Over) 이벤트가 일어나는 경우, 마우스 오버 이벤트가 발생한 단위 포틀릿의 크기가 확대되도록 할 수 있다. 이때, 마우스 오버가 발생한 경우, 보이스오버(Voice Over)와 같이 음성으로 읽어주는 TTS(Text To Speech)를 제공할 수도 있다. TTS를 실행할 때, 포틀릿 내 텍스트를 읽어주고 사용자가 TTS의 재생속도, 즉 읽어주는 속도를 증감하거나 크기를 증감하거나 횟수를 제어할 수 있는 아이콘도 함께 제공해줄 수 있다. 또는, 사용자 단말(100)의 웹캠에서 사용자의 얼굴을 인식할 수 있다면, 사용자가 더 가까이 올수록, 즉 사용자의 얼굴의 크기가 화면 내 점점 커질수록, 또 눈 미간의 주름이 더 깊어질수록, 즉 더 찡그릴수록 단위 포틀릿의 크기가 확대되도록 할 수 있다. 계속 확대되다가 사용자의 찡그림 또는 얼굴 커짐이 없어지는 경우 그 크기로 고정하여 정지할 수 있다.The magnifying glass unit 350 provides an enlargement icon at the top of the portal page or basic page, and after selecting the enlargement icon on the user terminal 100, when a mouse over event occurs in at least one unit portlet, the mouse The size of the unit portlet where an over event occurred can be enlarged. At this time, when a mouse over occurs, TTS (Text To Speech), which reads by voice like Voice Over, may be provided. When running TTS, the text in the portlet can be read and an icon can be provided that allows the user to increase or decrease the playback speed of TTS, that is, the reading speed, increase or decrease the size, or control the number of times. Alternatively, if the webcam of the user terminal 100 can recognize the user's face, the closer the user comes, that is, the larger the size of the user's face on the screen, and the deeper the wrinkles between the eyes become, that is, The more you squint, the larger the unit portlet can be. If the zoom continues and the user's frown or facial enlargement disappears, the size can be fixed and stopped.

폰트사이즈조정부(360)는, 포털 페이지 또는 기본 페이지의 하부에 단계별 폰트(Font) 사이즈 조정 아이콘을 배치하고, 사용자 단말(100)에서 폰트 사이즈 조정 아이콘의 단계를 선택하는 경우, 포털 페이지 또는 기본 페이지 내에 배치된 텍스트의 폰트의 크기를 단계에 대응하도록 증감시킬 수 있다. 웹페이지 자체의 크기를 조정하는 메뉴가 웹브라우저 자체에 적용되어 있지만, 이는 화면 자체를 확대하는 것이지 폰트 자체를 증감시키는 것이 아니다. 이에 따라, 폰트만을 증가시킬 수 있도록 폰트 사이즈 조정 아이콘을 배치하면서, 직관적으로 크기를 가늠할 수 있도록 도 3v와 같이 바 사이에 ○와 같은 아이콘을 배치하고, 사용자가 선택된 크기의 폰트에는 ● 표시로 토글되며, 양단에 폰트의 크기에 대응하는 텍스트를 배치함으로써 사용자가 어느 정도의 크기로 설정할 것인지를 직관적으로 파악할 수 있도록 할 수 있다.The font size adjustment unit 360 places a step-by-step font size adjustment icon at the bottom of the portal page or basic page, and when a step of the font size adjustment icon is selected in the user terminal 100, the portal page or basic page The font size of the text placed within can be increased or decreased to correspond to the level. A menu for adjusting the size of the web page itself is applied to the web browser itself, but this only enlarges the screen itself, not increases or decreases the font itself. Accordingly, the font size adjustment icon is placed so that only the font can be increased, and an icon such as ○ is placed between the bars as shown in Figure 3v so that the size can be intuitively estimated, and the font of the size selected by the user is toggled with a ● mark. By placing text corresponding to the size of the font at both ends, the user can intuitively understand what size to set.

표준준수부(370)는, 포털 페이지 및 기본 페이지를 포함한 솔루션 페이지를 제공할 때, 글로벌 웹표준 기반 반응형웹을 적용한 솔루션 페이지를 제공할 수 있다. When providing a solution page including a portal page and a basic page, the standard compliance department 370 may provide a solution page applying a responsive web based on global web standards.

시간외근무관리부(380)는, 사용자 단말(100)에서 시간외근무를 신청한 경우, 시간외근무의 결재권자 단말(미도시)로 시간외근무의 승인을 요청하고, 결재권자 단말에서 승인 이벤트를 출력한 경우 사용자 단말(100)로 승인 이벤트를 전달하며, 사용자 단말(100)에서 퇴근 이벤트를 출력하면 시간외근무 완료처리를 수행할 수 있다. When an application for overtime work is made at the user terminal 100, the overtime work management unit 380 requests approval for overtime work from the terminal (not shown) of the person with approval authority for overtime work, and outputs an approval event from the terminal of the person with approval authority for overtime work. An approval event is transmitted to the user terminal 100, and overtime work completion processing can be performed by outputting a work-leaving event from the user terminal 100.

공지제공부(390)는, 사용자 단말(100)의 신분별, 권한별 및 업무별 공지를 수신하도록 적어도 하나의 필터를 제공할 수 있다. 예를 들어, 공과대학 교수인 교원에게만 가야하는 공지가 직원 전체에게 간다면 이 또한 업무의 비효율 뿐만 아니라 업무비밀 등이 전 직원에게 공유되는 등 불상사가 발생할 수 있다. 이에 따라, 신분별, 권한별 및 업무별 공지를 각각 검색자나 필터 또는 태그를 이용하여 타겟에게만 도달되도록 설정할 수 있다. 이렇게 타겟에게만 공지가 전달되는 경우, 후술하는 일정안내 및 일정관리가 사용자의 별도의 관리 없이도 가능해질 수 있다. 예를 들어, 학사일정은 수 많은 부서와 신분, 예를 들어, 대학생, 대학원생, 교원, 직원 등이 공유하는데 자신과 관계없는 일정이 자꾸 공유되고 캘린더에 나타나는 경우 자신에게 정작 필요한 학사일정, 예를 들어 레포트 마감일이나 점수 입력 마감일 등은 챙기지 못하게 된다. 이에 따라 각 신분별 등에 따른 태그, 검색자, 필터 등을 제공하여 그 일정을 챙겨야 하는 사용자에게 정확히 전달될 수 있도록 한다.The notice providing unit 390 may provide at least one filter to receive notices by status, authority, and task of the user terminal 100. For example, if a notice that is supposed to go only to engineering college professors is sent to all employees, this may not only result in work inefficiency but also lead to unfortunate events such as work secrets being shared with all employees. Accordingly, notifications by status, authority, and task can be set to reach only the target by using searchers, filters, or tags, respectively. If the notice is delivered only to the target in this way, schedule guidance and schedule management, which will be described later, may be possible without separate management by the user. For example, the academic calendar is shared by numerous departments and statuses, such as college students, graduate students, faculty, staff, etc., but if schedules that are unrelated to you keep being shared and appear on the calendar, it is difficult to find the academic schedule that you actually need, e.g. For example, you will not be able to attend to report deadlines or score entry deadlines. Accordingly, tags, searchers, filters, etc. according to each status, etc. are provided to ensure that the schedule is accurately delivered to the user who needs to take care of it.

덧붙여서, 공지제공부(390)는, 공지사항에 대한 검색결과를 더욱 빠르고 쉽게 찾을 수 있도록 하기 위해, 검색엔진(Search Engine)을 엘라스틱서치(ElasticSearch)로 제공하고 맞춤화 서비스를 더 제공할 수 있다. 예를 들어, 본 발명의 일 실시예에 따른 포털 솔루션을 적용한 기관이 대학이라면, 대학 포털 사이트는, 대학 내부 구성원을 위한 공지사항이 업로드되는 웹사이트인데, 예를 들어, 업무공지사항, 학생공지사항, 학사공지사항, 졸업공지사항, 입시공지사항 등 다양한 게시판이 나누어져 있고, 교직원이 적절한 게시판을 선택하여 공지사항을 게시글 형태로 작성한다. 대학 포털은 게시글에 대한 검색엔진을 제공하는데, 예를 들어, 학생을 비롯한 사용자는 찾고자 하는 게시글이 있을 때, 게시판에서 일일이 원하는 게시글을 직접 찾아볼 필요 없이 검색 기능을 이용해서 게시글을 찾을 수 있다. 하루 평균 10 개 이상의 게시글이 올라오기 때문에, 원하는 게시글을 찾는 데 있어 검색엔진은 매우 중요하지만, 현재의 많은 대학 포털 검색엔진은 사용자가 만족할 만한 검색 결과를 보여주지 않는다.In addition, the notice providing unit 390 may provide ElasticSearch as a search engine and further provide customized services in order to find search results for notices more quickly and easily. For example, if the institution that applies the portal solution according to an embodiment of the present invention is a university, the university portal site is a website where notices for internal members of the university are uploaded, for example, work notices, student notices There are various bulletin boards divided into bulletin boards such as notices, academic notices, graduation notices, and entrance exam notices, and faculty and staff select the appropriate bulletin board and write notices in the form of posts. The university portal provides a search engine for postings. For example, when users, including students, find a posting they are looking for, they can use the search function to find the posting without having to manually search for the desired posting on the bulletin board. Since more than 10 posts are posted per day on average, search engines are very important in finding desired posts, but many current university portal search engines do not show search results that are satisfactory to users.

대학 포털 게시글은 일반적인 검색엔진의 대상 문서들과 차별화되는 특징을 가지며, 이러한 특징으로 인하여 검색엔진이 사용자의 질의(Query)에 대해 사용자가 원하는 결과를 제공하기 어렵다. 주요한 특징으로는 게시글 사이의 하이퍼링크(HyperLink)가 거의 없고, 글 없이 포스터 등의 이미지(Image)만 포함하고 있는 게시글이 많으며, 반복되는 행사에 대한 공지가 많다는 것이 있다. 또한, 사용자가 일상적으로 사용하지 않는 공식적인 어휘들을 사용한다. 이에, 본 발명의 일 실시예는, 대학 포털 게시글에 특화된 검색엔진을 설계하도록, 엘라스틱서치를 대학 포털 게시글의 특징에 따라 맞춤화하는 커스터마이징을 제공할 수 있다.University portal posts have characteristics that differentiate them from the target documents of general search engines, and these characteristics make it difficult for search engines to provide users with the results they want in response to their queries. Main characteristics include that there are almost no hyperlinks between posts, many posts contain only images such as posters without text, and there are many notices about repeated events. Additionally, it uses formal vocabulary that users do not use on a daily basis. Accordingly, one embodiment of the present invention can provide customization that customizes Elasticsearch according to the characteristics of university portal posts to design a search engine specialized for university portal posts.

일반적인 검색엔진의 검색 프로세스를 살펴보면, 검색엔진은 ① 문서 모으기(Document Collecting), ② 글 처리(Text Processing), ③ 색인 만들기(Indexing), ④ 질의 처리(Query Processing), ⑤ 찾기(Searching), ⑥ 순위 매기기(Ranking)의 6 개의 단계로 진행된다. 문서 모으기 단계에서는 웹 크롤러(Web Crawler)가 사용된다. 검색엔진이 질의에 대해 결과로 줄 문서들을 모으고 데이터베이스(DataBase)에 저장하는 과정이다. 글 처리 단계에서는 토큰화(Tokenize), 정규화(Normalize), 불용어 제거(Stopword Elimination) 등이 이루어진다. 평문으로 되어있는 글을 형태소 분석(Stemming)을 통하여 각 형태소를 정규화 하고, 토큰들의 리스트(List)로 변형한다. 예를 들면, [졸업유보신청자의 명단을 작성한다]는 문장은, [졸업유보신청자-명사], [의-조사], [명단-명사], [을-조사], [작성한다-동사]와 같은 리스트로 변형된다. 또한, 불용어 제거를 통하여 글의 내용에 영향을 주지 않는 토큰들을 제거한다. 색인 만들기 단계에서는 문서들에 빠르게 접근할 수 있도록 색인을 만들고 이를 바탕으로 문서를 저장한다. 가장 일반적으로 사용되는 기술은 역색인(Inverted Index)이다. 역색인을 통하여 검색엔진은 단어로부터 해당 단어를 포함하는 문서로의 매핑(Mapping)을 만들고 이를 저장한다. 색인 만들기를 함으로써 검색엔진은 찾는 단어가 포함된 문서가 무엇인지를 빠르게 찾을 수 있기 때문에, 사용자가 보낸 질의를 신속하게 처리할 수 있다.Looking at the search process of a typical search engine, a search engine consists of ① Document Collecting, ② Text Processing, ③ Indexing, ④ Query Processing, ⑤ Searching, ⑥ Ranking is carried out in six stages. A web crawler is used in the document collection stage. This is the process where a search engine collects documents that will be returned as results for a query and stores them in a database. In the text processing stage, tokenization, normalization, and stopword elimination are performed. Plain text text is normalized through morpheme analysis (Stemming) and transformed into a list of tokens. For example, the sentence [Prepare a list of applicants for deferred graduation] is [Applicants for deferred graduation - noun], [Us - particle], [List - noun], [Eul - particle], [Write - verb] It is transformed into a list like this. Additionally, tokens that do not affect the content of the text are removed through stopword removal. In the index creation stage, an index is created so that documents can be accessed quickly and documents are stored based on this index. The most commonly used technique is Inverted Index. Through an inverted index, the search engine creates a mapping from a word to a document containing the word and stores it. By creating an index, the search engine can quickly find documents containing the word you are looking for, so it can quickly process queries sent by users.

검색엔진을 사용하는 사용자는 검색엔진이 제공하는 사용자 인터페이스(User Interface)를 통하여 질의를 검색엔진에 보낸다. 가장 대중적으로 제공되는 사용자 인터페이스에는 웹(Web) 기반의 그래픽 사용자 인터페이스(Graphic User Interface)가 있다. Google과 Naver같은 포털 사이트가 그 예시이다. 질의 처리 단계에서는 사용자가 보낸 질의를 찾기 단계에서 사용하기 쉽도록 가공한다. 글 처리 단계에서 문서를 처리하는 것과 마찬가지로 형태소 분석을 통해 토큰화와 정규화가 진행된다. 또한, 유의어 처리를 위한 유의어 분석이 이루어진다. 예를 들어, [기숙사]라는 단어에 대한 유의어가 [생활관]이라는 정보를 검색엔진이 알고 있다면, 검색엔진은 질의를 [기숙사]라는 단어가 들어있는 문서 뿐 아니라 [생활관]이라는 단어가 들어있는 문서도 찾도록 질의를 가공한다.Users using search engines send queries to the search engine through the user interface provided by the search engine. The most popular user interface is the web-based graphic user interface. Portal sites such as Google and Naver are examples. In the query processing stage, the query sent by the user is processed so that it is easy to use in the search stage. Similar to document processing in the text processing stage, tokenization and normalization are performed through morphological analysis. Additionally, synonym analysis is performed to process synonyms. For example, if a search engine knows that the synonym for the word [dormitory] is [residence hall], the search engine will query not only documents containing the word [dormitory] but also documents containing the word [residence hall]. Process the query to find .

찾기 단계에서는 주어진 질의에 관련된 문서를 색인으로부터 찾는다. 역색인 기술을 사용하는 경우, 이미 단어별로 해당 단어를 포함하는 문서의 리스트가 매핑되어 있기 때문에 질의에 포함된 토큰들을 포함하는 문서를 쉽게 찾을 수 있다. 질의가 여러 개의 토큰을 포함한다면, 문서를 선정하는 데 여러 가지 전략이 고려될 수 있다. 가장 단순하게는 모든 토큰을 포함하는 문서만 선정하는 것이 있다. 이 경우, 질의에 관련된(Relevant) 문서를 검색 결과에 포함하지 않을 가능성이 높아져 신뢰도(Recall)가 낮아지나, 관련되지 않은 문서를 포함할 가능성은 낮아져 정확도(Precision)가 높아진다. 이와 반대로, 한 개의 토큰만 포함하더라도 검색 결과에 문서를 포함하는 전략도 존재한다. 이 경우 신뢰도에는 유리하나 정확도에는 불리하다. 일반적으로는 두 전략을 절충하여, 일정 비율 이상의 토큰을 포함하는 문서를 선정 하는 전략을 사용한다.In the search step, documents related to a given query are searched from the index. When using inverted indexing technology, you can easily find documents containing the tokens included in the query because the list of documents containing the word is already mapped for each word. If the query includes multiple tokens, several strategies can be considered for selecting documents. The simplest way is to select only documents that contain all tokens. In this case, the likelihood of not including documents related to the query (relevant) in the search results increases, lowering reliability (recall), but the likelihood of including irrelevant documents decreases, thereby increasing precision. Conversely, there are also strategies that include documents in search results even if they contain only one token. In this case, it is advantageous for reliability but disadvantageous for accuracy. Generally, a strategy is used that compromises the two strategies and selects documents containing a certain percentage of tokens or more.

순위 매기기 단계에서는 찾기 단계에서 찾은 문서들을 질의에 대한 관련성(Relevance)이 높은 순서로 정렬한다. 질의에 관련된 문서가 많은 경우, 그 중 가장 관련된 문서를 먼저 보여주는 것이 사용자 경험(User Experience)에 큰 영향을 주기 때문에, 순위 매기기 단계가 좋은 품질의 검색엔진을 만드는 데 중요하다. 순위를 결정하는데 사용하는 알고리즘은 크게 두 종류로 나눌 수 있다. 첫 번째는 연결 분석(Link Analysis)으로 문서들 사이에 존재하는 하이퍼링크의 개수와 중요도를 분석한다. 더 중요한 문서는 다른 중요한 문서로부터 많은 하이퍼링크를 받을 것이라는 가정에 따라 순위가 매겨진다. 예를 들어, 사용하는 페이지랭크(PageRank) 알고리즘을 이용할 수 있다. 두 번째는 글 분석(Text Analysis)으로 글에 포함된 단어의 개수와 위치를 분석하는데, 예를 들어, TF-IDF(단어 빈도-역 문서 빈도)를 이용할 수 있다.In the ranking stage, the documents found in the finding stage are sorted in order of high relevance to the query. When there are many documents related to a query, showing the most relevant documents first has a great impact on user experience, so the ranking step is important in creating a high-quality search engine. Algorithms used to determine rankings can be broadly divided into two types. The first is Link Analysis, which analyzes the number and importance of hyperlinks between documents. More important documents are ranked based on the assumption that they will receive more hyperlinks from other important documents. For example, the PageRank algorithm can be used. The second is text analysis, which analyzes the number and location of words included in a text. For example, TF-IDF (word frequency-inverse document frequency) can be used.

<대학 포털 검색엔진><University portal search engine>

본 발명의 일 실시예에서는 대학 포털 게시글의 특징을 반영하여 검색엔진의 글처리, 질의 처리, 순위 매기기의 맞춤화를 진행할 수 있다. 글 처리 단계에서는 게시글 본질의 내용을 토큰화, 정규화하는 것뿐만 아니라 글자 인식 라이브러리(Library)를 사용하여 게시글에 포함된 이미지의 글자를 추출한다. 이 과정을 통하여 본문에 핵심적인 단어가 포함되지 않고 이미지에만 핵심적인 단어가 들어있는 경우도 검색엔진이 올바르게 처리할 수 있다. 토큰화와 정규화를 위한 형태소 분석기는 엘라스틱서치가 영어와 한국어 분석기를 기본적으로 제공하기 때문에 해당 분석기를 사용할 수 있으며, 필요에 따라 다른 오픈 소스(Open Source)인 한국어 분석기를 사용할 수 있다. 또한, 대학 포털 게시글은 작성자, 작성일, 조회수 같은 메타데이터(Metadata)를 가지고 있기 때문에 이러한 메타데이터도 추출한다.In one embodiment of the present invention, the search engine's post processing, query processing, and ranking can be customized by reflecting the characteristics of university portal posts. In the post processing stage, the essential content of the post is not only tokenized and normalized, but also the letters of the image included in the post are extracted using a letter recognition library. Through this process, the search engine can correctly process cases where key words are not included in the text but only in the image. The morpheme analyzer for tokenization and normalization can be used because Elasticsearch provides English and Korean analyzers by default, and other open source Korean analyzers can be used as needed. In addition, since university portal posts have metadata such as author, creation date, and number of views, these metadata are also extracted.

질의 처리 단계에서는 유의어 처리를 진행한다. 엘라스틱서치는 유의어 리스트가 제공될 시 자동으로 질의를 가공하여, 원래 질의에 들어있던 토큰이 들어있는 문서 뿐 아니라 유의어가 들어있는 문서도 검색 결과에 포함되도록 만든다. 하지만, 대학 포털 게시글은 일반적인 한국어 유의어와는 다른 단어들을 사용하고 있기 때문에 기존의 존재하는 한국어 유의어 데이터베이스를 사용하는 것에는 한계가 존재한다. 따라서, 대학 포털 게시글에 적합한 유의어 리스트를 직접 만들 필요가 있다. 유의어 리스트를 만들기 위해서는 사용자의 행동 경향을 분석해야한다. 예를 들어, 사용자가 A라는 단어를 검색한 뒤, 아무 검색 결과도 선택하지 않고 B라는 단어로 다시 검색했다면, A와 B는 유의어 관계에 있을 가능성이 높다는 추측을 할 수 있다. 이와 같은 데이터를 많이 수집한다면 자동으로 대학 포털 게시글을 위한 유의어 리스트를 만들 수 있다.In the query processing stage, synonym processing is performed. Elasticsearch automatically processes the query when a list of synonyms is provided, so that not only documents containing tokens included in the original query but also documents containing synonyms are included in the search results. However, because university portal posts use words that are different from general Korean synonyms, there are limitations in using the existing Korean synonym database. Therefore, it is necessary to create a synonym list suitable for university portal posts. To create a synonym list, you need to analyze users' behavioral trends. For example, if a user searches for the word A and then searches again for the word B without selecting any search results, it can be assumed that A and B are likely to have a synonymous relationship. If you collect a lot of data like this, you can automatically create a synonym list for university portal posts.

순위 매기기 단계에서는 기본적으로 엘라스틱서치가 제공하는 TF-IDF 알고리즘을 이용할 수 있는데, 이에 추가적으로 글 처리 과정에서 추출한 메타데이터를 이용하여 순위 매기기 결과를 개선할 수 있다. 예를 들면, 조회수가 많고 작성 일시가 최신일수록 높은 순위가 된다. 조회수가 높다는 것은 많은 사용자가 원하는 게시글이라는 의미이므로, 검색 결과로 제공했을 때 사용자가 만족할 확률이 높다. 또한, 작성일시가 최근이라는 것은 반복적인 행사 중 최근 행사에 대한 공지라는 것을 의미하므로 사용자가 원하는 게시글일 가능성이 높다. 이를 통하여 검색엔진을 맞춤화할 수 있다. 이때, 띄어쓰기가 적용된 경우 다른 단어로 인식하지 않도록 띄어쓰기도 조정할 수 있고, 복수의 사이트에 개별적으로 흩어진 정보의 경우에는 각 사이트의 게시글을 모두 모아서 통합하는 분류를 수행할 수도 있다. 또, 사용자의 내비게이션의 결과, 예를 들어, 수업정보를 찾을 때 메인 페이지에서 찾을 수 없고 여러 단계를 거쳐 들어가야 하는 경우에는, 사용자가 원하는 정보를 찾기까지의 경로길이를 줄이기 위해 메인 페이지의 검색창에서 바로 원하는 결과의 페이지를 찾을 수 있도록 설정할 수 있다. 물론, 상술한 검색엔진 외에도 다양한 검색엔진을 이용할 수 있음은 자명하다 할 것이다.In the ranking stage, you can basically use the TF-IDF algorithm provided by Elasticsearch, and in addition, you can improve the ranking results by using metadata extracted during the article processing process. For example, the more views it has and the more recent the creation date, the higher the ranking. A high number of views means that the post is wanted by many users, so there is a high probability that users will be satisfied when it is provided as a search result. In addition, the fact that the creation date is recent means that it is a notice about a recent event among repetitive events, so it is highly likely that the post is what the user wants. This allows you to customize the search engine. At this time, if spacing is applied, the spacing can be adjusted so that it is not recognized as a different word, and in the case of information individually scattered across multiple sites, classification can be performed by collecting and integrating all posts from each site. In addition, as a result of the user's navigation, for example, when looking for class information, if it cannot be found on the main page and must go through several steps, the search box on the main page will be opened to reduce the path length until the user finds the desired information. You can set it so that you can immediately find the page with the desired results. Of course, it is obvious that various search engines can be used in addition to the above-mentioned search engines.

일정안내부(391)는, 사용자 단말(100)로 전달된 공지에 대응하는 일정에 따라 SMS, 이메일 및 푸시(Push) 중 적어도 하나의 채널을 통하여 일정알림을 제공할 수 있다. 일정관리부(393)는, 전체공지 및 부서별공지에 따른 전체일정, 부서별일정 및 개인별일정을 캘린더에 관리하고, 적어도 하나의 캘린더 애플리케이션과 연동하여 사용자 단말(100)의 개인별일정을 연동하며, 사용자 단말(100)의 일정을 공유하는 기능을 제공할 수 있다. 예를 들어, 사용자 A가 연차인데 A가 소속된 부서 또는 타부서에서 모르는 경우 사용자 A에게 업무를 맡겨야 하거나 할 때 계속하여 부서원에게 질의를 할 수 있는데, 이를 사용자 A와 업무에 관계된 사용자에게 공유를 해줄 수 있다. The schedule information unit 391 may provide schedule notification through at least one channel among SMS, email, and push according to the schedule corresponding to the notice delivered to the user terminal 100. The schedule management unit 393 manages the overall schedule, departmental schedule, and individual schedule according to general notices and departmental notices in a calendar, and links the personal schedule of the user terminal 100 by linking with at least one calendar application, and The ability to share (100) schedules can be provided. For example, if User A is on senior year and the department to which A belongs or another department does not know, the user can continue to ask questions to department members when assigning work to User A. This can be shared with users related to User A and the work. I can do it.

한편, 관리자 단말(400)은, 동적 메뉴관리, 포틀릿 관리, 권한 관리 및 사용자 관리를 수행할 수 있다. 웹은 HTML로 만들어진 정보교환 시스템이다. HTML은 Hypertext Markup Language 의 줄임말이다. 여기서 마크업이란 <>기호 안에 해당 내용의 문서 내에서의 역할을 규정하는 것이다. 예를 들어, <h1>이라는 기호를 사용하면 이 내용은 해당 문서의 제목이라는 뜻이다. 이렇게 마크업을 사용하여 만들어진 문서는 일종의 소스코드가 된다. 소스코드에는 사용자가 실제로 보는 내용과 내용을 보여주기 위한 표현을 담당하는 종속형 스타일 시트 즉 CSS(Cascading Style Sheet)가 있다. 내용에는 텍스트 뿐만 아니라 그림, 음악, 동영상도 포함이 된다. CSS는 HTML의 내용에 대한 서식 정보를 담고 있다. 소스코드 자체는 일반인들은 이해하기 어려우며 이것은 브라우저를 통해서 일반인인 사용자가 보는 화면으로 변환된다. 웹은 웹페이지들로 이루어져 있으며 단일한 도메인 아래에 모여 있는 웹페이지들의 모음을 웹사이트라고 지칭한다. 웹은 클라이언트와 서버로 구성된다. 웹페이지를 보려고 정보를 보내는 쪽을 클라이언트라고 하고 서버는 이 요청을 대응하여 HTML을 전송한다. 이렇게 웹에서의 대응을 전담해서 처리하는 웹서버라고 정의한다. 웹페이지는 크게 정적 웹페이지와 동적 웹페이지가 있다. 초기 웹에서는 HTML이 만들어진 문서였고 웹서버는 특정한 폴더에 있는 그 HTML을 클라이언트에게 전송하는 역할을 담당했다. 이러한 HTML을 정적 웹페이지라고 부른다. 이에 반하여 동적 웹페이지는 클라이언트가 필요로 하는 내용을 웹서버가 만들어서 전송한다. 이러한 웹페이지는 URL을 가진다. URL 이란 웹에서 해당 웹페이지의 주소와 같은 것이다. 주소는 [http://localhost/index.htm?k=para#section]과 같은 형식으로 되어 있다. Localhost는 웹사이트 전체를 지칭한다. 호스트 다음 슬래시에 index.htm 은 개별 웹페이지의 경로가 표기된다. ?k=para는 해당 웹페이지에 사용자가 보내는 정보를 뜻한다. #뒤에 나타나는 요소는 웹페이지의 특정한 영역을 지칭한다.Meanwhile, the administrator terminal 400 can perform dynamic menu management, portlet management, authority management, and user management. The web is an information exchange system made with HTML. HTML is an abbreviation for Hypertext Markup Language. Here, markup refers to defining the role of the content within the document within the <> symbol. For example, using the symbol <h1> means that this is the title of the document. A document created using markup in this way becomes a type of source code. In the source code, there is a dependent style sheet, or CSS (Cascading Style Sheet), which is responsible for the content the user actually sees and the expression to show the content. Content includes not only text but also pictures, music, and video. CSS contains formatting information for the content of HTML. The source code itself is difficult for the general public to understand, and it is converted into a screen seen by the general public through a browser. The web is made up of web pages, and a collection of web pages gathered under a single domain is called a website. The web consists of clients and servers. The side that sends information to view a web page is called the client, and the server transmits HTML in response to this request. In this way, it is defined as a web server that is specifically responsible for processing responses on the web. Web pages are largely divided into static web pages and dynamic web pages. In the early web, HTML was a document created, and the web server was responsible for transmitting the HTML in a specific folder to the client. Such HTML is called a static web page. In contrast, in dynamic web pages, the web server creates and transmits the content needed by the client. These web pages have URLs. A URL is the same as the address of a web page on the web. The address is in the format [http://localhost/index.htm?k=para#section]. Localhost refers to the entire website. In the slash after the host, index.htm indicates the path to an individual web page. ?k=para refers to information sent by the user to the corresponding web page. The elements that appear after # refer to specific areas of the web page.

이때, 관리자나 교원 또는 직원은 질의응답을 수행하게 되는데, Q&A 게시판에는 반복된 질문들이 자주 등록되고, 특히나 대학의 경우 신입생 및 재학생 모두 동일한 질문을 계속하여 반복하기 때문에, Q&A 게시판에 게재된 비정형 데이터를 중심으로 학생 중심의 질의응답집(FAQ)을 구성할 수 있다. 게시물에서 주요 핵심어를 추출하고 의미 연결망 분석을 통해 중심성 분석 및 핵심어 사이의 관계성을 파악하여 네트워크 시각화를 진행할 수 있다. 예를 들어, 중심성이 높은 핵심어는 신청, 교과목, 학점, 이수, 졸업, 승인, 기간, 전공, 포털, 학과 등의 순이고, 주요 핵심어들은 수업, 학적, 학생활동, 장학금, 도서관, 생활관, 정보화, 통학 영역의 군집으로 구분된다면, 이를 분야별로 정리할 수 있고, 마인드맵 또는 워드클라우드 형식으로 학생인 사용자에게 시각화하여 제공할 수도 있다.At this time, administrators, faculty, or employees conduct Q&A. Repeated questions are frequently registered on the Q&A bulletin board, and especially in the case of universities, both new and current students continue to ask the same questions, so unstructured data posted on the Q&A bulletin board A student-centered question and answer book (FAQ) can be constructed centered on . Network visualization can be performed by extracting key words from posts and analyzing centrality and identifying relationships between key words through semantic network analysis. For example, keywords with high centrality include application, subject, credit, completion, graduation, approval, period, major, portal, department, etc., and major keywords include classes, academic records, student activities, scholarship, library, dormitory, and information. , If it is divided into clusters of commuting areas, it can be organized by field and visualized and provided to student users in the form of a mind map or word cloud.

<의미 연결망 분석><Semantic network analysis>

의미 연결망 분석(Semantic Network Analysis)은 언어로 된 텍스트에서 의미를 가지는 단어들을 추출하고 핵심적인 역할을 하는 단어인 핵심어를 부여하며, 언어 메시지 내에서 구성되는 연결 관계를 파악하고 네트워크를 생성하여 언어 메시지의 다양한 특성을 분석하는 것이다 네트워크는 기본적으로 노드(Node)와 링크(Link)로 이루어지는데, 언어 텍스트에 나타난 다양한 의미들을 나타내는 단어가 네트워크의 노드가 되고, 단어들 간의 관계가 네트워크의 링크가 된다. 따라서, 노드 사이의 관계를 분석하여 전체적인 구조를 파악하고 한 문장에서 함께 출현하는 단어들을 하나의 선으로 연결하여 단어 사이의 관계를 의미 연결망 형태로 시각화 할 수 있다. 또한, 특정 단어가 사용된 빈도만을 고려하여 의미를 찾고자 했던 전통적인 내용분석(Content Analysis)과 달리, 특정 단어와 함께 자주 사용되는 단어가 무엇인지를 파악하여 단어 사이의 구조적 관계를 파악할 수 있다.Semantic Network Analysis extracts words with meaning from language texts, assigns core words, which are words that play a key role, identifies connections within the language message, and creates a network to convey the language message. It analyzes the various characteristics of a network. It is basically composed of nodes and links. Words representing various meanings appearing in language texts become nodes of the network, and relationships between words become links of the network. . Therefore, by analyzing the relationships between nodes, the overall structure can be identified, and by connecting words that appear together in a sentence with a single line, the relationships between words can be visualized in the form of a semantic network. In addition, unlike traditional content analysis, which attempts to find meaning by considering only the frequency with which a specific word is used, structural relationships between words can be identified by identifying words that are frequently used together with a specific word.

<중심성 분석><Centrality analysis>

노드 간의 관계에 따른 네트워크에서 노드가 어떤 역할을 담당하거나 어떤 영향을 미치는 것인지 파악하는 것은 중요하다. 일반적으로, 네트워크의 중심을 분석하기 위해 중심성(Centrality) 분석을 실시하는데, 이것은 노드가 중심에 어느 정도 근접한가를 표현하는 방법이다. 중심을 측정하는 방법에는 네트워크에서 맺어지는 노드 사이의 관계 중 어느 측면에 초점을 맞추어 중심을 측정하는지에 따라 연결(Degree) 중심성, 근접(Closeness) 중심성, 매개(Betweenness) 중심성, 위세(Eigenvector) 중심성으로 구분할 수 있다. 연결 중심성은, 다른 노드와의 연결된 정도를 중심으로 보는 개념으로 연결된 점이 어느 정도인지 여부에 따라 절대적인 기준이 되며, 근접 중심성은 노드와 노드 사이에 얼마만큼 가깝게 있는지를 보는 개념으로 노드 사이의 거리가 핵심이 된다. 그리고, 매개 중심성은 한 노드가 다른 노드들과의 네트워크를 구축하는데 중개자 역할을 수행하는지를 보는 개념으로 중개역할에 초점을 맞추어 중심으로 간주하는 특징을 가지며, 위세 중심성은 노드의 영향력 또는 중요도를 평가하는 개념으로 연결된 이웃노드의 중심성이 높으면 연결한 노드의 중심성도 증가한다는 관점을 반영한 것이다. It is important to understand what role a node plays or what influence it has in a network based on the relationships between nodes. Generally, centrality analysis is performed to analyze the center of a network, which is a method of expressing how close a node is to the center. Methods for measuring centrality include degree centrality, closeness centrality, betweenness centrality, and eigenvector centrality, depending on which aspect of the relationship between nodes in the network is focused on. It can be divided into: Betweenness centrality is a concept that looks at the degree of connection with other nodes and is an absolute standard depending on how connected the points are, and closeness centrality is a concept that looks at how close the nodes are to each other, and the distance between nodes is It becomes the core. In addition, betweenness centrality is a concept that examines whether a node acts as an intermediary in building a network with other nodes, and has the characteristic of focusing on the intermediary role and considering it as central, while prestige centrality evaluates the influence or importance of the node. This reflects the view that if the centrality of neighboring nodes connected by a concept is high, the centrality of the connected nodes also increases.

<구조적 등위성><Structural equivalence>

네트워크에서 노드들과의 관계는 노드들의 연결 형태 구조를 나타내는데, 등위성(Equivalence)은 네트워크 내의 노드들이 서로 어느 정도 유사한 형태의 관계 패턴을 맺고 있는지를 나타내는 개념이다. 다시 말해 어떤 노드들이 직접적인 링크를 맺고 있지 않더라도 구조적으로 서로 유사한 관계의 패턴을 나타내는 경우 등위의 관계라고 할 수 있다. 따라서, 노드들이 서로 동일한 위치에 있을 때 구조적 등위성이라고 하고, 구조적 등위성 집단 내의 노드들은 서로 대체가 가능하다는 특징이 있다. 예를 들어, 구조적 등위성에서 가장 많이 활용되고 있는 CONCOR(CONvergence of iterated CORrelation) 분석을 이용할 수 있는데, 이 방법은 노드들 간 연결 관계의 패턴에 대하여 피어슨 상관관계를 분석하고 이를 토대로 노드들의 블록(Block)을 식별하여 블록들 간의 관계를 파악하는 것이다. 따라서. CONCOR 분석은 노드들의 집합에 해당되는 블록을 파악하고 이러한 블록들 간의 관계도 파악이 가능하기 때문에 노드들의 관계가 명확하여 상관관계로 유사성을 분석하는 것이 용이한 네트워크에서 보다 의미가 있는 하위집단을 구분해 낼 수 있다.The relationship between nodes in a network represents the connection structure of the nodes, and equivalence is a concept that indicates to what extent the nodes in the network have similar relationship patterns to each other. In other words, even if some nodes do not have a direct link, if they show structurally similar relationship patterns, it can be said to be a relationship of equal rank. Therefore, when nodes are in the same position, it is called structural equivalence, and nodes within a structural equivalence group have the characteristic of being interchangeable. For example, CONCOR (CONvergence of iterated CORrelation) analysis, which is most widely used in structural equivalence, can be used. This method analyzes Pearson correlation for the pattern of connection relationships between nodes and based on this, blocks of nodes ( Block) is identified and the relationship between blocks is identified. thus. CONCOR analysis identifies blocks corresponding to a set of nodes and can also identify relationships between these blocks, so it distinguishes more meaningful subgroups in a network where the relationships between nodes are clear and it is easy to analyze similarity through correlation. You can do it.

<에고 네트워크 분석><Ego network analysis>

네트워크는 분석의 초점에 따라 전체 네트워크(Whole Network)와 에고 네트워크(ego Network)로 분류할 수 있다. 전체 네트워크 정보를 제시하는 것은 네트워크 전체의 모습을 파악하는데 의미가 있는 반면 에고 네트워크는 지정된 몇 개의 에고 노드만을 대상으로 하여 이들과 직접 링크를 형성하고 있는 노드들, 그리고 그 노드들 간의 링크만으로 구성된 네트워크를 파악할 수 있다. 여기서 에고는 개인, 집단, 조직, 커뮤니티를 의미하는데, 네트워크에서 개별 노드들은 모두 에고가 될 수 있다. 즉, 에고 네트워크는 관심을 가지는 노드를 중심에 두고 그 중심과의 관계로 모든 사항이 집약된다. 이를 종합해보면, 에고 네트워크 분석은 전체 네트워크에서 에고 노드와 연결되는 노드들로 구성되는 부분 네트워크의 특성을 관찰하는데 유용하게 사용될 수 있다. Networks can be classified into whole networks and ego networks depending on the focus of analysis. Presenting the entire network information is meaningful in understanding the overall appearance of the network, while the ego network is a network that targets only a few designated ego nodes, nodes that form direct links with them, and only links between those nodes. can be figured out. Here, ego refers to an individual, group, organization, or community, and all individual nodes in the network can be egos. In other words, the ego network places the node of interest at the center and all matters are concentrated in relation to the center. To sum up, ego network analysis can be usefully used to observe the characteristics of a partial network composed of nodes connected to ego nodes in the entire network.

이에, 본 발명의 일 실시예는, 전체 네트워크를 대상으로 한 CONCOR 분석 이후 네트워크 내 특정 노드를 중심으로 관련된 이웃 노드들 간의 특성을 파악하기 위해 에고 네트워크 분석을 추가적으로 제공할 수 있다. 이때, 질의응답을 분류하는 것에서만 끝나면 안되고 사용자가 직접 질의응답에서 의미있는 결과를 찾아내야 한다. 이때에도 상술한 검색엔진을 이용하여 사용자, 예를 들어 학생은 A 용어에 대해 B 단어를 쓰는데, 교직원은 A를 사용함으로써 검색결과를 못찾는 경우를 제로화할 수 있다. 물론, 상술한 방법 이외에도 다양한 방법으로 질의응답을 분류할 수 있다. Accordingly, an embodiment of the present invention may additionally provide ego network analysis to identify characteristics between neighboring nodes related to a specific node in the network after CONCOR analysis of the entire network. At this time, it is not enough to just classify the questions and answers; the user must directly find meaningful results from the questions and answers. In this case, using the above-mentioned search engine, the user, for example, a student, uses the B word for the A term, but the faculty member uses A to zero out the cases where the search result cannot be found. Of course, questions and answers can be classified in various ways other than those described above.

이하, 상술한 도 2의 솔루션 서비스 제공 서버의 구성에 따른 동작 과정을 도 3 및 도 4를 예로 들어 상세히 설명하기로 한다. 다만, 실시예는 본 발명의 다양한 실시예 중 어느 하나일 뿐, 이에 한정되지 않음은 자명하다 할 것이다.Hereinafter, the operation process according to the configuration of the solution service providing server of FIG. 2 described above will be described in detail using FIGS. 3 and 4 as an example. However, it will be apparent that the embodiment is only one of various embodiments of the present invention and is not limited thereto.

도 3a과 같이 본 출원인의 기업(신나는플랫폼)의 솔루션(sPortal)은 도 3b와 같이 기관 정보화에 최적화된 솔루션을 제공하는데, 도 3c와 같이 대학에 특화된 대학 포털 솔루션을 제공하고, 표준 솔루션을 기반으로 한 빠른 구축이 가능하며, 유연한 데이터 관리 및 시스템 연동성을 제공하고, 웹표준 및 멀티 디바이스에 우수한 UI/UX를 제공한다. 도 3d와 같이 통합된 정보 인프라로 접근을 위한 단일 창구를 제공하고 개인별 맞춤 서비스를 제공할 수 있다. 도 3e 및 도 3f와 같이 사용자 신분별 서비스 설정을 수행하고, 도 3g와 같이 관리자 단말(400)은 사용자 신분으로 선택가능한 포틀릿 목록을 지정하고 디폴트를 설정하며 사용자 단말(100)에서는 이 디폴트값을 개인화하여 사용할 수 있도록 간편한 UI/UX, 예를 들어 드래그 앤 드롭으로 위치, 종류 등을 변경할 수 있도록 한다. 현재 도 3h와 같은 교육기관, 기업 및 의료기관에서 본 발명의 솔루션을 이용하고 있다.As shown in Figure 3a, the solution (sPortal) of the applicant's company (Exciting Platform) provides a solution optimized for institutional informatization as shown in Figure 3b. As shown in Figure 3c, it provides a university portal solution specialized for universities and is based on a standard solution. It enables quick construction, provides flexible data management and system interoperability, and provides excellent UI/UX for web standards and multi-devices. As shown in Figure 3d, an integrated information infrastructure can provide a single window for access and provide personalized services. As shown in FIGS. 3E and 3F, service settings are performed for each user identity, and as shown in FIG. 3G, the administrator terminal 400 specifies a list of portlets selectable by user identity and sets the default, and the user terminal 100 sets this default value. Simple UI/UX for personalized use, for example, allowing you to change location, type, etc. by dragging and dropping. Currently, educational institutions, companies, and medical institutions, as shown in Figure 3h, are using the solution of the present invention.

<sPortal 솔루션><sPortal solution>

본 발명의 일 실시예에 따른 솔루션은 상술한 바와 같이 도 3i 내지 도 3k와 같은데, 도 3l과 같이 포틀릿 생성 및 관리를 수행할 수 있다. 데이터 및 비즈니스 로직과 연계할 수 있는데, 연계 대상 시스템의 인터페이스 제공 여부에 따라 표준 데이터 연계 방식을 사용하고, 웹 콘텐츠를 연계할 때, HTTP, 웹서비스와 RSS, XML을 이용하여 콘텐츠 통합을 지원한다. 또, 콘텐츠는 기존 및 신규 단위 시스템에 대한 콘텐츠를 관리하고, 웹접근성 중심의 다이나믹 콘텐츠 포틀릿을 관리하며, 생성된 콘텐츠는 사용자별 및 그룹별 드래그 앤 드롭으로 쉽게 생성하고 조작할 수 있다. 도 3m과 같은 포틀릿 설계 방식으로 개발을 수행할 수 있고, 도 3n과 같은 관리 프로세스로 사용자 및 관리자가 개인화 및 관리를 수행할 수 있다. 또 도 3o와 같은 맞춤공지를 수행하여 사용자에게 필요없는 공지가 표시되거나 필요한 공지가 표시되지 않는 등의 문제를 제로화하고, 도 3p와 같은 마이페이지를 제공할 때 사용자 사용미숙으로 인한 오류를 방지하기 위해 디폴트 페이지, 즉 기본 페이지를 제공할 수도 있다. 또 개인이 메뉴를 동적으로 생성하여 사용자 편의성을 높여줄 수 있다. 도 3q와 같이 포틀릿 및 바로가기 콘텐츠를 등록하고 설정할 수 있는데 도 3r과 같이 사용자 신분별 포틀릿을 관리자가 설정할 수 있고, 바로가기 서비스를 사용자가 설정함으로써 자신이 자주 쓰는 메뉴를 복잡한 경로나 단계를 거쳐 들어가지 않아도 되도록 설정할 수 있다. 도 3s와 같은 솔루션을 제공할 수 있고, 본 발명의 일 실시예에 따른 차별화 목록은 도 3t 내지 도 3y와 같을 수 있고, 본 발명의 일 실시예에 따른 솔루션은 도 3z와 같이 소프트웨어진흥법 제20조제3항 및 동법 시행규칙 제6조제1항에 따라 1등급으로 인증을 받았다.As described above, the solution according to an embodiment of the present invention is the same as Figures 3i to 3k, and can perform portlet creation and management as shown in Figure 3l. It can be linked with data and business logic. A standard data linkage method is used depending on whether the link target system provides an interface. When linking web content, content integration is supported using HTTP, web services, RSS, and XML. . In addition, content is managed for existing and new unit systems, dynamic content portlets centered on web accessibility are managed, and created content can be easily created and manipulated by dragging and dropping by user and group. Development can be performed using the portlet design method shown in Figure 3m, and users and administrators can perform personalization and management using the management process shown in Figure 3n. In addition, by performing customized notifications as shown in Figure 3o, problems such as unnecessary notices being displayed to the user or necessary notices not being displayed are eliminated, and errors due to user inexperience are prevented when providing My Page as shown in Figure 3p. For this purpose, a default page, that is, a default page, may be provided. Additionally, individuals can dynamically create menus to increase user convenience. As shown in Figure 3q, portlets and shortcut contents can be registered and set. As shown in Figure 3r, the administrator can set up portlets for each user status, and by setting the shortcut service, users can access menus they frequently use through complex paths or steps. You can set it so you don't have to enter it. A solution as shown in Figure 3s may be provided, and the differentiation list according to an embodiment of the present invention may be as shown in Figures 3t to 3y, and the solution according to an embodiment of the present invention may be provided according to Article 20 of the Software Promotion Act as shown in Figure 3z. It was certified as Grade 1 in accordance with Article 3 and Article 6, Paragraph 1 of the Enforcement Rules of the same Act.

<사용자 매뉴얼><User Manual>

도 4a와 같이 매뉴얼을 보면, 도 4b와 같이 서버측 및 클라이언트측 설치사양이 표시되고, 도 4c와 같은 솔루션을 제공할 수 있다. 이때 메뉴 및 권한관리는 도 4d 및 도 4e와 같이 설정할 수 있고, 도 4f와 같이 게시판을 생성, 분류 및 그룹핑을 할 수 있다. 도 4g와 같이 포틀릿을 수정, 삭제, 배치할 수 있으며, 도 4h와 같이 바로가기를 등록할 수 있다. 도 4i와 같이 로그인 및 로그아웃을 할 수 있고, 도 4j와 같이 GNB(Global Navication Bar) 영역의 기능을 제공할 수 있다. 도 4k와 같이 포틀릿 아이콘별 기능을 정의할 수 있고, 도 4l과 같이 개인설정메뉴를 제공한다. 도 4m과 같이 바로가기 설정 및 포틀릿 폰트 크기 설정의 메뉴를 제공하며, 도 4n과 같이 포틀릿 및 테마를 설정할 수 있고, 도 4o와 같이 채용정보를 검색하는 검색자를 제공할 수 있다. 도 4p와 같이 SMS 발송을 웹페이지에서 수행할 수 있는 기능을 제공하고, 도 4q와 같이 시간외근무의 결재를 처리할 수 있으며, 도 4r과 같이 포털관리 로그를 제공할 수 있다.If you look at the manual as shown in Figure 4a, server-side and client-side installation specifications are displayed as shown in Figure 4b, and a solution as shown in Figure 4c can be provided. At this time, menus and authority management can be set as shown in Figures 4d and 4e, and bulletin boards can be created, classified, and grouped as shown in Figure 4f. Portlets can be modified, deleted, and placed as shown in Figure 4g, and shortcuts can be registered as shown in Figure 4h. You can log in and log out as shown in Figure 4i, and the function of the GNB (Global Navigation Bar) area can be provided as shown in Figure 4j. As shown in Figure 4k, functions for each portlet icon can be defined, and a personal setting menu is provided as shown in Figure 4l. It provides a menu for shortcut settings and portlet font size settings as shown in Figure 4m, portlets and themes can be set as shown in Figure 4n, and a searcher for searching job information can be provided as shown in Figure 4o. It provides a function to send SMS on a web page as shown in Figure 4p, can process approval for overtime work as shown in Figure 4q, and provides a portal management log as shown in Figure 4r.

이와 같은 도 2 내지 도 4의 포털 솔루션 서비스 제공 방법에 대해서 설명되지 아니한 사항은 앞서 도 1을 통해 포털 솔루션 서비스 제공 방법에 대하여 설명된 내용과 동일하거나 설명된 내용으로부터 용이하게 유추 가능하므로 이하 설명을 생략하도록 한다.Matters that are not explained about the portal solution service provision method in FIGS. 2 to 4 are the same as those described above with respect to the portal solution service provision method in FIG. 1 or can be easily inferred from the description, so the following description is provided. Please omit it.

도 5는 본 발명의 일 실시예에 따른 도 1의 포털 솔루션 서비스 제공 시스템에 포함된 각 구성들 상호 간에 데이터가 송수신되는 과정을 나타낸 도면이다. 이하, 도 5를 통해 각 구성들 상호간에 데이터가 송수신되는 과정의 일 예를 설명할 것이나, 이와 같은 실시예로 본원이 한정 해석되는 것은 아니며, 앞서 설명한 다양한 실시예들에 따라 도 5에 도시된 데이터가 송수신되는 과정이 변경될 수 있음은 기술분야에 속하는 당업자에게 자명하다.FIG. 5 is a diagram illustrating a process in which data is transmitted and received between components included in the portal solution service providing system of FIG. 1 according to an embodiment of the present invention. Hereinafter, an example of the process of transmitting and receiving data between each component will be described with reference to FIG. 5, but the present application is not limited to this embodiment, and the process shown in FIG. 5 according to the various embodiments described above It is obvious to those skilled in the art that the process of transmitting and receiving data can be changed.

도 5를 참조하면, 솔루션 서비스 제공 서버는, 기관 내 적어도 하나의 페이지가 SSO(Single Sign On)으로 연동되도록 설정한다(S5100).Referring to FIG. 5, the solution service providing server sets at least one page within the organization to be linked with SSO (Single Sign On) (S5100).

그리고, 솔루션 서비스 제공 서버는, 사용자 단말의 사용자의 신분에 따른 기본 페이지를 제공하고(S5200), 사용자 단말의 화면의 크기에 따라 포털 페이지가 최적화되도록 반응형웹을 제공한다(S5300).Additionally, the solution service providing server provides a basic page according to the identity of the user of the user terminal (S5200) and provides a responsive web so that the portal page is optimized according to the screen size of the user terminal (S5300).

또, 솔루션 서비스 제공 서버는, 사용자 단말에서 기본 페이지를 구성하는 적어도 하나의 단위 포틀릿의 위치 및 종류를 조정하는 경우 세팅을 저장한다(S5400).Additionally, the solution service providing server stores the settings when adjusting the position and type of at least one unit portlet constituting the basic page in the user terminal (S5400).

상술한 단계들(S5100~S5400)간의 순서는 예시일 뿐, 이에 한정되지 않는다. 즉, 상술한 단계들(S5100~S5400)간의 순서는 상호 변동될 수 있으며, 이중 일부 단계들은 동시에 실행되거나 삭제될 수도 있다.The sequence between the above-described steps (S5100 to S5400) is only an example and is not limited thereto. That is, the order between the above-described steps (S5100 to S5400) may change, and some of the steps may be executed simultaneously or deleted.

이와 같은 도 5의 포털 솔루션 서비스 제공 방법에 대해서 설명되지 아니한 사항은 앞서 도 1 내지 도 4를 통해 포털 솔루션 서비스 제공 방법에 대하여 설명된 내용과 동일하거나 설명된 내용으로부터 용이하게 유추 가능하므로 이하 설명을 생략하도록 한다.Matters that are not explained regarding the portal solution service provision method of FIG. 5 are the same as or can be easily inferred from the content previously described regarding the portal solution service provision method through FIGS. 1 to 4, and are therefore explained below. Please omit it.

도 5를 통해 설명된 일 실시예에 따른 포털 솔루션 서비스 제공 방법은, 컴퓨터에 의해 실행되는 애플리케이션이나 프로그램 모듈과 같은 컴퓨터에 의해 실행가능한 명령어를 포함하는 기록 매체의 형태로도 구현될 수 있다. 컴퓨터 판독 가능 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용 매체일 수 있고, 휘발성 및 비휘발성 매체, 분리형 및 비분리형 매체를 모두 포함한다. 또한, 컴퓨터 판독가능 매체는 컴퓨터 저장 매체를 모두 포함할 수 있다. 컴퓨터 저장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 분리형 및 비분리형 매체를 모두 포함한다. The method of providing a portal solution service according to an embodiment described with reference to FIG. 5 may also be implemented in the form of a recording medium containing instructions executable by a computer, such as an application or program module executed by a computer. Computer-readable media can be any available media that can be accessed by a computer and includes both volatile and non-volatile media, removable and non-removable media. Additionally, computer-readable media may include all computer storage media. Computer storage media includes both volatile and non-volatile, removable and non-removable media implemented in any method or technology for storage of information such as computer-readable instructions, data structures, program modules or other data.

전술한 본 발명의 일 실시예에 따른 포털 솔루션 서비스 제공 방법은, 단말기에 기본적으로 설치된 애플리케이션(이는 단말기에 기본적으로 탑재된 플랫폼이나 운영체제 등에 포함된 프로그램을 포함할 수 있음)에 의해 실행될 수 있고, 사용자가 애플리케이션 스토어 서버, 애플리케이션 또는 해당 서비스와 관련된 웹 서버 등의 애플리케이션 제공 서버를 통해 마스터 단말기에 직접 설치한 애플리케이션(즉, 프로그램)에 의해 실행될 수도 있다. 이러한 의미에서, 전술한 본 발명의 일 실시예에 따른 포털 솔루션 서비스 제공 방법은 단말기에 기본적으로 설치되거나 사용자에 의해 직접 설치된 애플리케이션(즉, 프로그램)으로 구현되고 단말기에 등의 컴퓨터로 읽을 수 있는 기록매체에 기록될 수 있다.The method of providing a portal solution service according to an embodiment of the present invention described above can be executed by an application installed by default on the terminal (this may include programs included in the platform or operating system, etc., installed by default on the terminal), It may also be executed by an application (i.e., a program) that the user installs directly on the master terminal through an application providing server such as an application store server, an application, or a web server related to the service. In this sense, the method of providing a portal solution service according to an embodiment of the present invention described above is implemented as an application (i.e., a program) installed by default in the terminal or directly installed by the user, and is stored in a computer-readable record such as in the terminal. Can be recorded on media.

전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다. The description of the present invention described above is for illustrative purposes, and those skilled in the art will understand that the present invention can be easily modified into other specific forms without changing the technical idea or essential features of the present invention. will be. Therefore, the embodiments described above should be understood in all respects as illustrative and not restrictive. For example, each component described as unitary may be implemented in a distributed manner, and similarly, components described as distributed may also be implemented in a combined form.

본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.The scope of the present invention is indicated by the claims described below rather than the detailed description above, and all changes or modified forms derived from the meaning and scope of the claims and their equivalent concepts should be construed as being included in the scope of the present invention. do.

Claims (10)

기관 내 사용자의 신분에 대응하는 기본 페이지를 출력하고, 반응형웹(Responsive Web)을 기반으로 화면의 크기에 따라 최적화되도록 디스플레이하며, 화면을 구성하는 적어도 하나의 단위 포틀릿(Portlet)의 위치 및 종류를 조정하여 개인화하는 사용자 단말;
기관 내 적어도 하나의 페이지가 SSO(Single Sign On)으로 연동되도록 설정하는 통합로그인부, 상기 사용자 단말의 사용자의 신분에 따른 기본 페이지를 제공하는 페이지제공부, 상기 사용자 단말의 화면의 크기에 따라 포털 페이지가 최적화되도록 반응형웹을 제공하는 반응형웹제공부, 상기 사용자 단말에서 상기 기본 페이지를 구성하는 적어도 하나의 단위 포틀릿의 위치 및 종류를 조정하는 경우 세팅을 저장하는 개인화부, 상기 사용자 단말의 신분별, 권한별 및 업무별 공지를 수신하도록 적어도 하나의 필터를 제공하는 공지제공부, 전체공지 및 부서별공지에 따른 전체일정, 부서별일정 및 개인별일정을 캘린더에 관리하고, 적어도 하나의 캘린더 애플리케이션과 연동하여 상기 사용자 단말의 개인별일정을 연동하며, 상기 사용자 단말의 일정을 공유하는 기능을 제공하는 일정관리부, 상기 사용자 단말로 전달된 공지에 대응하는 일정에 따라 SMS, 이메일 및 푸시(Push) 중 적어도 하나의 채널을 통하여 일정알림을 제공하는 일정안내부를 포함하는 솔루션 서비스 제공 서버; 및
동적 메뉴관리, 포틀릿 관리, 권한 관리 및 사용자 관리를 수행하는 관리자 단말;을 포함하며,
상기 개인화부는,
각 사용자의 마우스가 클릭되는 키스트로크 또는 이벤트를 모두 모아서 히트맵으로 작성한 후, 히트맵 내 빈도가 높은 영역의 포틀릿을 빈도순으로 좌측상단에서부터 하단으로 제공하며,
상기 공지제공부는,
상기 사용자 단말의 신분별, 권한별 및 업무별 공지를 각각 검색자나 필터 또는 태그를 이용하여 타겟에게만 도달되도록 설정하며,
상기 SSO는, 주인증기관인 IdP(Identity Provider)와 서비스기관인 RP(Resource Provider)로 구성되며,
상기 통합로그인부는,
공격자에 의해 사용자의 IdP 계정 탈취에 성공한다면, 공격자가 탈취한 IdP 계정을 이용하여 복수의 웹 사이트에서 사용자의 정보에 접근하기 전에, 사용자가 후속 조치(Remediation Action)를 취하여 공격자의 접근을 막을 수 있도록, 후속조치 중 RP 비밀번호 변경, RP에서 IdP와의 연동해제 및, RP 계정 삭제를 포함하여 공격자의 세션을 끊도록 구성하며,
상기 RP는,
상기 RP의 비밀번호가 변경되었을 때, 모든 세션을 종료하도록 구현하고, 상기 RP에서 상기 IdP와의 연동 해제가 이루어졌을 때 상기 RP의 비밀번호를 새롭게 생성한 후 모든 세션을 종료하도록 구현하고, 사용자로부터 RP 계정 삭제 요청이 들어왔을 때 즉시 모든 세션을 종료하도록 구현하며,
상기 일정안내부는,
상기 사용자 단말의 개인별일정에 따라 상기 사용자 단말의 사용자와 업무에 관계된 다른 사용자에게 상기 사용자의 개인별일정을 공유하며,
상기 관리자 단말은,
Q&A 게시판에 게재된 게시물인 비정형 데이터를 중심으로 학생 중심의 질의응답집을 구성하며, 상기 게시물에서 핵심어를 추출하고, 상기 추출된 핵심어에 대해 의미 연결망 분석을 통해 중심성과 관련한 핵심어인 신청, 교과목, 학점, 이수, 졸업, 승인, 기간, 전공, 포털 및 학과에 대해 중심성 분석을 수행하고 수업, 학적, 학생활동, 장학금, 도서관, 생활관, 정보화 및 통학 영역의 군집으로 구분된 핵심어 사이의 관계성을 파악하여 분야별로 정리하고, 마인드맵 또는 워드클라우드 형식으로 학생인 사용자에게 시각화하여 제공하는 것을 특징으로 하는 포털 솔루션 서비스 제공 시스템.
Outputs a basic page corresponding to the user's identity within the organization, displays it to be optimized according to the screen size based on Responsive Web, and determines the location and type of at least one unit portlet that makes up the screen. a user terminal that is customized and personalized;
An integrated login unit that sets up at least one page within the organization to be linked with SSO (Single Sign On), a page provider unit that provides a basic page according to the user's identity of the user terminal, and a portal according to the screen size of the user terminal. A responsive web provision unit that provides a responsive web so that the page is optimized, a personalization unit that stores settings when adjusting the position and type of at least one unit portlet constituting the basic page in the user terminal, according to the identity of the user terminal , a notice provision department that provides at least one filter to receive notices by authority and task, manages the overall schedule, departmental schedule, and individual schedule according to all notices and departmental notices in the calendar, and links with at least one calendar application A schedule management unit that links the personal schedule of the user terminal and provides the function of sharing the schedule of the user terminal, at least one of SMS, email, and push according to the schedule corresponding to the notice delivered to the user terminal A solution service providing server including a schedule information unit that provides schedule notifications through a channel; and
It includes an administrator terminal that performs dynamic menu management, portlet management, authority management, and user management,
The personalization department,
All keystrokes or events where each user's mouse is clicked are collected and created into a heat map, and portlets in the areas with high frequency within the heat map are provided in order of frequency from the top left to the bottom.
The notice provision department said,
Set notifications by identity, authority, and task of the user terminal to reach only the target using searchers, filters, or tags, respectively,
The SSO consists of an IdP (Identity Provider), which is the main certification authority, and an RP (Resource Provider), which is a service organization.
The integrated login unit,
If an attacker succeeds in hijacking the user's IdP account, the user can take follow-up action (Remediation Action) to block the attacker's access before the attacker accesses the user's information on multiple websites using the hijacked IdP account. Follow-up measures are configured to terminate the attacker's session, including changing the RP password, disconnecting the RP from the IdP, and deleting the RP account.
The RP is,
When the RP's password is changed, all sessions are terminated, and when the RP is disconnected from the IdP, a new RP password is created and all sessions are terminated, and the RP account is accessed from the user. When a deletion request is received, all sessions are terminated immediately.
In the schedule information section,
According to the personal schedule of the user terminal, the user's personal schedule is shared with the user of the user terminal and other users related to work,
The manager terminal is,
We construct a student-centered Q&A collection based on unstructured data, which are posts posted on the Q&A bulletin board, extract key words from the posts, and analyze the extracted key words through semantic network analysis to identify key words related to centrality such as application, course, and credit. , perform centrality analysis on completion, graduation, approval, period, major, portal, and department, and identify relationships between key words divided into clusters in the areas of classes, academic records, student activities, scholarships, library, dormitory, informatization, and commuting. A portal solution service provision system that organizes by field and visualizes and provides it to student users in mind map or word cloud format.
삭제delete 제 1 항에 있어서,
상기 솔루션 서비스 제공 서버는,
상기 포털 페이지 또는 기본 페이지 상단에 확대 아이콘을 제공하고, 상기 사용자 단말에서 상기 확대 아이콘을 선택한 후, 상기 적어도 하나의 단위 포틀릿에 마우스 오버(Mouse Over) 이벤트가 일어나는 경우, 상기 마우스 오버 이벤트가 발생한 단위 포틀릿의 크기가 확대되도록 하는 돋보기부;
를 더 포함하는 것을 특징으로 하는 포털 솔루션 서비스 제공 시스템.
According to claim 1,
The solution service providing server is,
An enlargement icon is provided at the top of the portal page or basic page, and after selecting the enlargement icon on the user terminal, when a mouse over event occurs in the at least one unit portlet, the unit in which the mouse over event occurred A magnifying glass unit that enlarges the size of the portlet;
A portal solution service provision system further comprising:
제 1 항에 있어서,
상기 솔루션 서비스 제공 서버는,
상기 포털 페이지 또는 기본 페이지의 하부에 단계별 폰트(Font) 사이즈 조정 아이콘을 배치하고, 상기 사용자 단말에서 상기 폰트 사이즈 조정 아이콘의 단계를 선택하는 경우, 상기 포털 페이지 또는 기본 페이지 내에 배치된 텍스트의 폰트의 크기를 상기 단계에 대응하도록 증감시키는 폰트사이즈조정부;
를 더 포함하는 것을 특징으로 하는 포털 솔루션 서비스 제공 시스템.
According to claim 1,
The solution service providing server is,
When a step-by-step font size adjustment icon is placed at the bottom of the portal page or basic page, and a step of the font size adjustment icon is selected on the user terminal, the font of the text placed in the portal page or basic page a font size adjustment unit that increases or decreases the size to correspond to the above steps;
A portal solution service provision system further comprising:
제 1 항에 있어서,
상기 개인화부는,
상기 사용자 단말에서 상기 적어도 하나의 단위 포틀릿의 위치를 드래그 앤 드롭(Drag & Drop)으로 이동시킨 경우, 상기 드래그 앤 드롭으로 이동된 단위 포틀릿의 위치를 저장 및 세팅하는 것을 특징으로 하는 포털 솔루션 서비스 제공 시스템.
According to claim 1,
The personalization department,
Providing a portal solution service, characterized in that when the position of the at least one unit portlet is moved by drag and drop in the user terminal, the position of the unit portlet moved by drag and drop is stored and set. system.
제 1 항에 있어서,
상기 솔루션 서비스 제공 서버는,
상기 포털 페이지 및 기본 페이지를 포함한 솔루션 페이지를 제공할 때, 글로벌 웹표준 기반 반응형웹을 적용한 솔루션 페이지를 제공하는 표준준수부;
를 더 포함하는 것을 특징으로 하는 포털 솔루션 서비스 제공 시스템.
According to claim 1,
The solution service providing server is,
When providing a solution page including the portal page and the basic page, a standards compliance department that provides a solution page applying a responsive web based on global web standards;
A portal solution service provision system further comprising:
제 1 항에 있어서,
상기 솔루션 서비스 제공 서버는,
상기 사용자 단말에서 시간외근무를 신청한 경우, 상기 시간외근무의 결재권자 단말로 상기 시간외근무의 승인을 요청하고, 상기 결재권자 단말에서 승인 이벤트를 출력한 경우 상기 사용자 단말로 승인 이벤트를 전달하며, 상기 사용자 단말에서 퇴근 이벤트를 출력하면 시간외근무 완료처리를 수행하는 시간외근무관리부;
를 더 포함하는 것을 특징으로 하는 포털 솔루션 서비스 제공 시스템.
According to claim 1,
The solution service providing server is,
When an application for overtime work is made from the user terminal, approval of the overtime work is requested from the terminal of the person with the approval authority for the overtime work, and when an approval event is output from the terminal of the person with the approval authority for the overtime work, an approval event is transmitted to the user terminal, and the approval event is transmitted to the user terminal. An overtime work management unit that performs overtime work completion processing when a work-off event is output from the user terminal;
A portal solution service provision system further comprising:
삭제delete 삭제delete 삭제delete
KR1020230009809A 2023-01-26 2023-01-26 System for providing portal solution service KR102613616B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020230009809A KR102613616B1 (en) 2023-01-26 2023-01-26 System for providing portal solution service

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020230009809A KR102613616B1 (en) 2023-01-26 2023-01-26 System for providing portal solution service

Publications (1)

Publication Number Publication Date
KR102613616B1 true KR102613616B1 (en) 2023-12-14

Family

ID=89166859

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020230009809A KR102613616B1 (en) 2023-01-26 2023-01-26 System for providing portal solution service

Country Status (1)

Country Link
KR (1) KR102613616B1 (en)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060015846A1 (en) * 2004-07-14 2006-01-19 International Business Machines Corporation Portal friendly user interface widgets
KR20060071060A (en) * 2004-12-21 2006-06-26 함덕환 Administrative affairs integration management system
KR101546725B1 (en) * 2015-01-26 2015-08-25 (주)유코아시스템 Responsive layouts design method
KR20190070643A (en) * 2017-12-13 2019-06-21 (주)포그리트 A visitor behavior alalysis appratus of dynamic webpages and a method for analysing a visitor behavior of webpages using it
KR20190073835A (en) * 2017-12-19 2019-06-27 하트미디어(주) Method of measuring web style guide compliance rate in responsive web
KR20190109025A (en) * 2018-03-16 2019-09-25 강인희 Method for providing multi-mode scheduling service integrating time table with calendar
KR20200013573A (en) * 2019-02-14 2020-02-07 유한회사 휴잇 Integrated management mobile platform for enterprises and institutions

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060015846A1 (en) * 2004-07-14 2006-01-19 International Business Machines Corporation Portal friendly user interface widgets
KR20060071060A (en) * 2004-12-21 2006-06-26 함덕환 Administrative affairs integration management system
KR101546725B1 (en) * 2015-01-26 2015-08-25 (주)유코아시스템 Responsive layouts design method
KR20190070643A (en) * 2017-12-13 2019-06-21 (주)포그리트 A visitor behavior alalysis appratus of dynamic webpages and a method for analysing a visitor behavior of webpages using it
KR20190073835A (en) * 2017-12-19 2019-06-27 하트미디어(주) Method of measuring web style guide compliance rate in responsive web
KR20190109025A (en) * 2018-03-16 2019-09-25 강인희 Method for providing multi-mode scheduling service integrating time table with calendar
KR20200013573A (en) * 2019-02-14 2020-02-07 유한회사 휴잇 Integrated management mobile platform for enterprises and institutions

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
"네이버웍스 헬프센터"(2019.02.25.) 인터넷 <https://guide.worksmobile.com/kr/>* *
"학생 포털 시스템-사용자 매뉴얼-gist.ac.kr"(2022.12.25.)인터넷 <https://sportal.gist.ac.kr/manual.pdf>* *
"호서대학교 포털시스템 사용자매뉴얼(교원)"(2022.10.08.)인터넷 <http://portal.hoseo.edu/help/help_prof.htm>* *
"히트맵으로 사용자의 관심 콘텐츠와 소비 흐름 파악하기"(2017.10.11.) 인터넷 <https://brunch.co.kr/@beusable/62>* *

Similar Documents

Publication Publication Date Title
US11797749B2 (en) Systems and methods for anchoring content objects to structured documents
US8229910B2 (en) Apparatus, system, and method for an inline display of related blog postings
US20070214422A1 (en) Framework for implementing skins into a portal server
JP2009531793A (en) System and method for converting web community and web application data
Cao et al. The Athabasca University mobile library project: increasing the boundaries of anytime and anywhere learning for students
US9817811B2 (en) Web server system, dictionary system, dictionary call method, screen control display method, and demonstration application generation method
US20140164906A1 (en) System and method for displaying content on mobile devices
JP2021518940A (en) A software framework for tracking progress in a classroom environment
Hoff et al. From paper‐and‐pen annotations to artefact‐based mobile learning
KR102613616B1 (en) System for providing portal solution service
Mitchell Metadata standards and web services in libraries, archives, and museums
US20140164905A1 (en) System and method for displaying content on mobile devices
Ma et al. Development and research of digital campus system based on android
Lingam et al. Supporting end-users in the creation of dependable web clips
KR20100018674A (en) System and method for providing blog portal
Coondu et al. Mobile-enabled content adaptation system for e-learning websites using segmentation algorithm
Oliveira et al. Evaluating Self-Service BI and Analytics Tools for SMEs.
US10218673B2 (en) Web content display system and method
Pandey et al. Analysis of The Effectiveness of Web Portals used in Academic Institutions of Tribhuvan University
Anjos et al. How to Overcome the Challenges of Developing Responsive and Accessible Websites–A Case Study
US20210407630A1 (en) Clinical Trial Protocol Portal
Bietila et al. Designing an evaluation process for resource discovery tools
Vigo et al. Automatic device-tailored evaluation of mobile web guidelines
Sara et al. A web development system for producing an interactive electronic book
Jan et al. File Tracking System for Government Degree College (GDC) Wari Dir Upper, Khyber Pakhtunkhwa

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant