Search Your Paper

Wednesday, January 28, 2015

Twisted Question: - How did you implement UML in your project?

First let me say some fact about this question, you can not implement all the nine diagrams given by UML in one project; you can but can be very rare scenario. The way UML is implemented in project varies from project to project and company to company.

Second very important point to remember is normally all diagrams are not implemented in project , but some basic diagrams are important to have in order that project is readable. When we talk about project’s every project have phases example (Requirement’s phase, design phase, coding phase etc etc).As every phase of the software cycle proceeds these diagrams come in picture. Some diagrams span across multiple phases.

Note: - If you want to have a detail about software life cycle look out for chapter “Project Management”.

Normally following are different basic phases:-

Requirement phase (Use Case Diagrams , Activity diagrams)

Requirement phase is the phase where you normally gather requirement and Use Cases are the best things to make explanation of the system. In requirement phase you can further make complicated Use Cases more simple and easy to understand by using activity diagrams, but I do not see it as must in every project. If the Use cases are really complicated go for a Activity diagram. Example CRUD (creates, read, update and delete) operation use cases have no significance for making activity diagrams. So in short the outcome
UML documents from requirement phase will be Use Case and Activity diagram documents (Activity diagram documents will only be there if there are complicated Use Cases to be simplified).

Just a small Twist: - Do I need all UML diagrams in a project?

Note: - This question is specially asked to know have you actually used UML. I have seenmany guys trying to give some jack of all answer’s saying “YES”. Beware it’s a trap.

Not all diagrams are needed in project example: - Activity diagrams will only be needed when you want some simplified look of a complicated use case.

Design phase (Class diagrams , object diagrams , Component diagrams ,Collaboration diagrams , Deployment diagrams, Sequence diagrams)

Design phase is the phase where you design your technical architecture of your project. Now again in this you do not use all UML documents of a project. But the next document after the Use Case document will be the Component diagram. Component diagrams form a high level classification of the system. So after “Use Cases” just try to come out with a high level classification / grouping of related functionalities.

This should be compulsory diagram as outcome of this document will form “NAMESPACES” structure of .NET project.

Ok now once your high level grouping is done you can go ahead with class diagrams.Especially from Use Case you get the “NOUNS” and “VERBS” which can form the class name and the method name respectively. From my point of view class diagrams should be compulsory in projects.

Object diagrams are not compulsory it depends on how complicated your project. Object diagrams show’s the relation between instances of class at runtime. In short it captures the state and relation of classes at any given moment of time. Example you have class which creates objects of different classes, it’s like a factory. In class diagram you will only show that it as a simple class with a method called as “CreateObject”.But in object diagrams actually you will show the types of instances creates from that object.

Collaboration diagrams mainly depict interaction between object to depict a some purpose. I find this diagram to be more useful than Object diagrams as they are addressed for some purpose. Example “Login Process” which will use “Login object”, “User Object” etc to fulfill the login purpose. So if you find the process very complicated go for this diagram.

I see as a thumb rule if there is a activity diagram which shows some serious complicated scenarios I will like to go for this diagram inorder to simplify the explanation. State chart diagram is again created if your project requires it. If your project has some complicated start and end states to show then this diagram is most useful. Recently I was making a call center project where the agent phone pickup and hang state has to be
depicted. So my first state was when agent picks up the phone and the final stage was when agent hangs the phone, in between process was very complicated, which can only be shown by using state chart diagrams.
Sequence diagrams are needed if some sequence is complicated. Do not confuse sequence diagrams with Activity diagram, Activity diagram’s map to a Use Case while sequence diagrams show object interaction in sequence.

Deployment diagrams are again not a compulsory requirement. It shows the hardware and software deployment of your system. If you really have leisure in your project go for it or if you want to make the client smile seeing some diagrams.

Implementation phase / Coding phase (Class diagrams for reverse engineering , Other diagrams for validity check)
In this phase mostly class diagrams are re-engineered with the source code. But other diagrams are also present for validity check example state chart diagrams will be used in case to check that the both activity between those states are following the proper logic. If some things have to be changed then again there is iteration backward to the Requirement phase.

Testing phase
This phase mostly goes for the testing department. I am not talking about preparing UTP plans but SITP plans. Where the testing department will look at all diagrams to prepare a test plan and execute it. Example it will see the Use Case document to see the business rules, it will see the activity diagram and sequence diagrams to see the proper flow of modules. If some things are not proper there is iteration back to the 

Design phase.
Roll out and close over phases. All document just to recheck the things are proper example are all modules deployed according to the deployment diagrams, are all business rules in Use Cases satisfied.

Let’s revise following are the points:-
 Not all diagrams are compulsory.

 The minimum diagrams according to software life cycle phases are :-

Requirement phase: - Use Case Diagrams

Design Phase: - Component diagrams, Class diagrams

Implementation phase: - All diagrams derived from pervious phases specially class diagram for reverse engineering.

Testing phase: - All diagrams derived from requirement and design phases for verification and preparing test plans.

Roll out and close over phase: - All document derived from Design phase and requirement phases.
Below is a sample figure which shows all the documents in relevant phases.

Phase mapping with UML documents


Post a Comment

North India Campus



North India Campus. Powered by Blogger.

Welcome to North India Campus

Search Question Paper


1st & 2nd Semester BE 1st Semester B.Com 1st Semester BBA 1st Semester BCA (D) 1st Semester Bsc. IT (D) 1st Semester Bsc. IT 1 1ST Semester M.SC IT(D) 1st Semester M.Tech 1ST Semester MBA 1st Semester MCA 1st Semester MCA (D) 2nd Sem B.Com 2nd Sem BB 2nd Sem BBA 2nd Sem BCA 2nd Sem BCA (D) 2nd Sem BSC IT(D) 2nd Sem BSC(IT) 2nd Semester MBA A Foundation Course in Human Values and Professional Ethics Accounting and Financial Management Accounting and Financial Managementm ACCOUNTING FOR MANAGEMENT Adolescence and Family Education B.Ed (2012) Adolescence And Family Education B.Ed (Dec 2013) Adolescence And Family Education B.Ed (Dec 2014) ADVANCE SOFTWARE ENGINEERING Advanced Accounting 2 ADVANCED COMMUNICATION SYSTEMS ADVANCED MATHEMATICS FOR ENGINEERS Aligarh Muslim University Applied Physics 1 B.Ed (Dec 2008) B.Ed (Dec 2009) B.Ed (Dec 2011) B.Ed (Dec 2012) B.Ed (Dec 2013) B.Ed (Dec 2014) B.Ed (June 2008) B.Ed (June 2009) B.Ed (June 2015) BA 1 Syllabus Bachelor in Science Fashion and Technology Basic Accounting Basic Chemistry Basic Electrical Engineering Basic Electronics Basic Mathematics BSC 1 Basoc Accounting BBA 1 BBA 2 BCA Question Papers BCA Syllabus 1 Bridge Course in Mathematics Bsc.IT Business Communication-1 Business Communication-2 Business Communication-I 2 Business Environment 2 Business Laws 1 Business Mathematics Business Organisation and Management Business Statistics 2 C C Programming C Programming Bsc IT 1 C Programming Lecture Videos CADM 1st Semester Communication 2 Communication and Soft Skills Communication Skills Communication Skills 1 Communicative English Computer and Education B.Ed (Dec 2011) Computer and Education B.Ed (Dec 2012) Computer Applications Computer Fundamental Computer Graphics Video Lecture Computer in Education B.Ed (Dec 2008) Computer in Education B.Ed (Dec 2009) Computer In Education B.Ed (Dec 2013) Computer in Education B.Ed (Dec 2014) Computer Mathematical Foundation MCA D Computer Networks 1st Semester Computer Operating System Computer Organization and Assembly Language Computer System Architecture 2 Corporate Accounting Curriculum and Instruction B.Ed (Dec 2009) Curriculum and Instruction B.Ed (Dec 2011) Curriculum and Instruction B.Ed (Dec 2012) Curriculum and Instruction B.Ed (Dec 2013) Curriculum and Instruction B.Ed (Dec 2014) Curriculuman and Instruction B.Ed (Dec 2008) DATA COMMUNICATION NETWORK Data Structure 2 Data Structures 2 data structures 2 BCA D Data Structures Through C 2 Database Management with Microsoft Access Bsc IT 1 Delhi University News Desktop Publishing Tools 2 Digital Circuits and Logic Design 2 Digital Circuits and Logic Design 2 BCA D Digital Electronics 2 Digital Electronics Fundamentals 2 Distance Education B.Ed (Dec 2008) Distance Education B.Ed (Dec 2009) Distance Education B.Ed (Dec 2011) Distance Education B.Ed (Dec 2012) Distance Education B.Ed (Dec 2013) Distance Education B.Ed (Dec 2014) Dot Net Interview Questions & Answers. Education and Evaluation B.Ed (Dec 2009) Education and Society B.Ed (Dec 2008) Education and Society B.Ed (Dec 2009) Education and Society B.Ed (Dec 2011) Education and Society B.Ed (Dec 2012) Education and Society B.Ed (Dec 2013) Education and Society B.Ed (Dec 2014) Education Technology B.Ed (Dec 2009) Educational Evaluation B.Ed (Dec 2008) Educational Evaluation B.Ed (Dec 2011) Educational Evaluation B.Ed (Dec 2012) Educational Evaluation B.Ed (Dec 2013) Educational Evaluation B.Ed (Dec 2014) Educational Technology B.Ed (Dec 2008) Educational Technology B.Ed (Dec 2011) Educational Technology B.Ed (Dec 2012) Educational Technology B.Ed (Dec 2013) ELECTRONICS SYSTEM DESIGN Engineering Drawing and Graphics Engineering Mathematics Engineering Question Paper set 1 Engineering Syllabus English and Communication Skills English and Communication Skills 2 Environmental Science 2 Finaicial Accounting Financial Accounting Financial Management 2 Sem Fundamentals of Information Technology Bsc 1 Guidance and Counseling B.Ed (Dec 2008) Guidance and counseling B.Ed (Dec 2009) Guidance and Counseling B.Ed (Dec 2011) Guidance and Counseling B.Ed (Dec 2012) Guidance and Counseling B.Ed (Dec 2013) HIV and Aids Education B.Ed (Dec 2011) HIV and Aids Education B.Ed (Dec 2012) HIV and Aids Education B.Ed (Dec 2013) Hotel Management and Air Lines Syllabus HP University News Human Resource Management Human Resource Management 2 Information Management Information Technology for Management Intoduction to microprocessor 2 BCA D Introduction of Computers BBA1 Introduction to Computers 2 Introduction to I.T MCA D Introduction to Information Technology Introduction to Information Technology(BCA) Kurukshetra University News Lecture 20 Clipping -- Lines And Polygons Macro Economics 2 Management Syllabus Managerial Economics Marketing Management 2 Master Of Technology M-Tech Syllabus MBA Papers MCA Notes MCA Question Papers Mercantile Law 2 Metal Cutting Question Paper Metal Forming Question Paper Micro Economics Network Security NEURAL NETWORKS & FUZZY LOGIC Object Oriented Programming in C++ Object Oriented Programming in Cpp OOP CPP 2 Operating system (BCA) Operating System Bsc IT 1 Organisational Behaviour Organization Behaviour 2 Other Universities Others Panjab University News PCM 2 BCA D PGDCA Pharmacy Syllabus Principles and Practices of Management principles of management 2 Production and Operations Management 2 Programming in C Programming in C MCA D Programming Logic Development with C Psychology of Learning and Development B.Ed (Dec 2013) Psychology of Learning and Development B.Ed (Dec 2008) Psychology of Learning and Development B.Ed (Dec 2009) Psychology of Learning and Development B.Ed (Dec 2011) Psychology of Learning and Development B.Ed (Dec 2012) PTU Affiliated Colleges of Integerated College PTU Affiliated Colleges of Management College PTU Affiliated Colleges of Architecture PTU Affiliated Colleges of Engineering PTU Affiliated Colleges of Pharmacy College PTU Forms Download PTU News and Events Quantitative Techniques RDBMS 2 RDBMS-I 2 Relational Database Management System Research Methodology 2 SAD 2 BCA D Syllabus of Computer Applications Syllabus of Journalism and Mass Communication Syllabus of Medical Laboratory Science System Analysis and Design System Analysis and Design 2 System Analysis and Design MCA D Teacher and School B.Ed (Dec 2008) Teacher and School B.Ed (Dec 2009) Teacher and School B.Ed (Dec 2011) Teacher and School B.Ed (Dec 2012) Teacher and School B.Ed (Dec 2013) Teacher of English B.Ed (Dec 2009) Teaching of English B.Ed (Dec 2008) Teaching of English B.Ed (Dec 2011) Teaching of English B.Ed (Dec 2012) Teaching of English B.Ed (Dec 2013) Teaching of Mathematics B.Ed (Dec 2009) Teaching of Mathematics B.Ed (Dec 2011) Teaching of Mathematics B.Ed (Dec 2012) Teaching of Mathematics B.Ed (Dec 2013) Teaching of Science B.Ed (Dec 2008) Teaching of Science B.Ed (Dec 2009) Teaching of Science B.Ed (Dec 2011) Teaching of Science B.Ed (Dec 2012) Teaching of Science B.Ed (Dec 2013) Teaching of Social Studies B.Ed (Dec 2008) Teaching of Social Studies B.Ed (Dec 2011) Teaching of Social Studies B.Ed (Dec 2012) Teaching of Social Studiess B.Ed (Dec 2013) Teaching of Social Study B.Ed (Dec 2009) Technical Communication UGC NET Computer Science Question Paper Uttarakhand Open University Video Lecture Web Technologies 1st Semester Web Technologies 2 Welding Technology Question Paper Workshop on IT and E-Commerce 2