22
Student Industrial Training (SIT) Name : Muhamad khairul filhan bin nusi Matric No : 18562 Programme : ICT Place of Internship : MIMOS KHTP

Student Industrial Training Presentation Slide

Embed Size (px)

Citation preview

Page 1: Student Industrial Training Presentation Slide

Student Industrial Training (SIT) Name : Muhamad khairul filhan bin nusiMatric No : 18562Programme : ICTPlace of Internship : MIMOS KHTP

Page 2: Student Industrial Training Presentation Slide

Outline

About Company Internship overview Challenges & limitations Achievements Self-Evaluations Recommmendations

Page 3: Student Industrial Training Presentation Slide

About MIMOSl MIMOS BERHAD (Malaysia's national R&D centre in ICT)

l Established on 16 March 1995, as a company under the Ministry of Finance (MoF) .

l MIMOS main activities :

• Focusing on developing technology platforms.• Conducts research through innovative projects.• Develop software for government agencies • Enhance the marketing channel for the entrepreneur

MIMOS TPMMIMOS KHTP

Page 4: Student Industrial Training Presentation Slide

MIMOS OperationsVision To be a Premier applied researchcentre in frontier technologies

Mission To pioneer innovative informationand communication technologies towards growing globally competitiveindigenous industries.

My Team

MIMOS Products Department

Page 5: Student Industrial Training Presentation Slide

Overview of the Internship

• MIMOS KHTP• (Software Development Team SDL)• From January 19, 2015 to August 21, 2015• Projects :

Public void project {Maven, NoSQL Database, Serialization , ElasticSearch,Jsoup,Coding Pattern}

Page 6: Student Industrial Training Presentation Slide

NoSQL DatabaseNoSQL databases family : • non-relational • document-oriented • no prefixed, rigid, database schemas • no joins • horizontal scalability

Document/oriented : MongoDBKey value : MapDB

Page 7: Student Industrial Training Presentation Slide

MongoDB with JAVA API

• Scalable High-Performance Open-source and Document-oriented database• Full-index support for high performance• Made up of multiple collections and it’s schema-less,contains documents.

MongoJack ( Perfect Jackson Mapper )

Reason :•MongoDB uses BSON to store documents. MongoJack provide Java JSON mapper for MongoDB. •Deserialises queried object directly from the MongoDB stream•Supports mapping ObjectIds to strings and byte arrays, using an @ObjectID annotation.

Theory Aspects

Page 8: Student Industrial Training Presentation Slide

Develop the working RESTful webservices using Jetty and the MongoDB database.

MongoDB with JAVA APITechnical Aspects

•Perform all the basic MongoDB CURD operations using the JAVA API.•Working and iterate with the Java model (person,company ).•Learn the MongoDB utility pattern. •Monitor all the database data using MonjaDB.

Page 9: Student Industrial Training Presentation Slide

MapDB with JAVA API

• Pure Java database and embedded database engine.• Provides Java collections backed by disk/memory.• Huge indexes and persistent data model.

Theory Aspects

Benefit of using MapDB•High performance compared to HashMap•Secondary Collections. Overcome the limitations of scalability and performance by the rational databases. Using the Bind class, we can establishi binding and perform mapping.

PrimaryCollections

SecondaryCollections

Mapping

Page 10: Student Industrial Training Presentation Slide

Technical Aspects•Perform all the basic MapDB CURD operations using the JAVA API.•Working and iterate with the Java model (person,company ).•Learn the MapDB utility pattern.

Develop the working RESTful webservices using Jetty and the MapDB database. (InverseMapping is implemented here).

MapDB with JAVA API

Page 11: Student Industrial Training Presentation Slide

SerializationGson • Gson is a Java library to convert java objects to/from JSON • presentation. • JSON is a JavaScript Object Notation,data-interchange format.• Allow custom representation for objects.• toJson() and fromJson() method

Disadvantages : • Slow serialization and deserialization performance compared to Jackson.• Dont have Tree model structure (DOM-like access).• Only default constructor can be used .

Page 12: Student Industrial Training Presentation Slide

Serialization Apache Avro

• Rich data structures ,compact and fast binary data formats.• Store persistent data in a container file.• Relies on schemas. The schema is used every time we access the avro data. Special features : •Dynamic Typing •Untagged data •No manually-assigned field IDs

Already implement Avro jersey protocols. The performance is fast.

Page 13: Student Industrial Training Presentation Slide

ElasticSearchFeatures :•Distributed and multitenant-capable full-text search engine with a RESTful web interface•Schema-free JSON documents.•Allow storing,searching and analyzing big volumes of data quickly.

Technical Aspect•Perform the basic ElasticSearch operation using the Java API such as Index,Get,Search,Delete and Update. •Develop the utility class for the ElasticSearch by referring to the recommended pattern.

Page 14: Student Industrial Training Presentation Slide

ElasticSearchScreenshot from the project.

Page 15: Student Industrial Training Presentation Slide

Jsoup• Best Java HTML parser,implements the HTML5 specifications. • Consist of DOM ( Document-object model ) to ease the input, extracting data, modifying data and cleaning HTML process.• Very fast and high performance in extracting data from the HTML.

My Task • Query the elements and contents from the websites like TheStar and myMetro.• Clean the Html contents by using HtmlCleaner libraries.

Page 16: Student Industrial Training Presentation Slide

JsoupScreenshot from the project.

Tools DescriptionUnit Test HtmlUnitJsoup Extract Html

JTidy Traverse XML elements

Page 17: Student Industrial Training Presentation Slide

Apache Maven•Maven is the build-tool or software project management tools.

•Maven build lifecycle is a well define the order in which the goals are to be executed.

Maven Goals : clean

package install

generate-sourcesdeploy

Page 18: Student Industrial Training Presentation Slide

JUnit• Perfect unit testing framework for the Java programming languages.• Assisting in development of test-drive development.• Features :

• Follow the unit testing pattern provided from Mr. Matthew.

• Provides Annotation to identify the test methods.• Provides Assertion for testing expected results.• Less complex and take less time.

Page 19: Student Industrial Training Presentation Slide

Current ProjectRESTNoSQL- Understand the REST Java protocol.- Implements the project design pattern such as proxy, command and filter pattern. - Steps to the final project delivarables.

Delivarables item

Page 20: Student Industrial Training Presentation Slide

Challenges and AchievementChallenges • Professional Environment• New Technology• RequirementsAchievement• MongoDB, MapDB, • ElasticSearch, Apache Lucene• Java advance concept and framework ( MVC ) • Data structures in Java• JUnit ( Test cases ),Jsoup • Serialization : Avro, Gson• Coding pattern and naming conventions in Java• Time management • Deductive and inductive coding• Critical reasoning and clean coding

Page 21: Student Industrial Training Presentation Slide

Self - Evaluation

Quality of work Initiative Quantity of work Attendance Punctuality Dependability Attitude Relation with othersOverall

Work on own initiativeGoodRegularGoodGoodGoodVery GoodVery good and acceptedGood

Page 22: Student Industrial Training Presentation Slide

Conclusion

• Industrial training program in MIMOS had given oppurtinities to trainee to prepare themself as future IT experts.• MIMOS is one of the best R&D company for trainee to have exposure on Information Technology development industry. • MIMOS has a lot of dedicated employees who is willing to help to make this industrial training program a success.• Well delivered the final project and give benefits to the Host Company supervisor and manager.

Recommendations•Applying the leading company work environment into MIMOS culture.•Reduce the relationship gap between the industry and education. •Encourages employees to think strategically about the R&D activities in MIMOS.