210 likes | 295 Views
Introduction. Project in Software Engineering. איגור. גלעד. דביר. נטלי. עומר. שלומי. Project Goal:. Enabling efficient development using Follow the Sun methodology. Method:.
E N D
Introduction Project in Software Engineering • איגור • גלעד • דביר • נטלי • עומר • שלומי
Project Goal: • Enabling efficient development using Follow the Sun methodology. Method: • Developing an Eclipse IDE plug-in which will help avoiding the shortcomings of Follow the Sun while utilizing its advantages.
Main Ideas: • A four part system:
Task System: • Rational: • Distributed teams have need for higher automation of task handling to make up for lack of communication. • Requirement of ability to pass tasks between sites. • Idea: • Integrated task management system.
Task System: • A task could be any piece of work that could be described independently: • An application • A module • A class • A function • Any other required resource
Task System: • Every task contains the necessary information to perform it: • Goal • Concrete “To do” list • Sub-tasks – smaller tasks which are part of the task • Recommendations • Effected resources (files, packages, etc…) • Work completed on that task
Task System: • Workers can create new tasks according to their position in the project. • New tasks are assigned to a group of people (These people may be spread across the different sites)
Task System: • Assigned workers can work on the task until completion or the end of the day. • When the day ends the task’s “To do” list is updated with recent progress and comments needed to continue progress • Over the sea workers assigned to the task receive upon their arrival a detailed report according the task’s status and may continue the task.
Task System: Event System: • Rational: • Lack of an integration phase requires constant knowledge on changes and their effects on the system. • Idea: • Integrated event system alerts relevant workers.
Event System: • Each worker can subscribe himself to every file / module / package / etc… • Each such object will notify its subscribers of any changes made: • Changes made to some resource, fitting the subscriber criteria. • Explicit notifications initiated by other workers
Event System: Query System: • Rational: • Lack of informal and immediate communication channels prevents discussions and utilization of the team’s available experience. • Idea: • Integrated query system allows flow of information and expertise between remote sites.
Query System: • Whenever advice is needed, and not locally available: • A worker can create a query and attach it to any system object such as a module or a task. • All associated people will receive notifications of the query. • The query is presented in a thread like page, allowing all users to answer, see existing answers or discuss.
Query System: Trace System: • Rational: • Distributed teams prevent locating needed documentation on time. • Idea: • Integrated documentation system allows quick tracing according to semantic connections.
Trace System: • Project documentation will be integrated on the version control server. • A connections graph between documents will supply an easy and fast way to trace relevant documentation needed for solving a problem.
Trace System: High Graphic Utilization: • Rational: • Today’s system allow for more advanced visualization techniques allowing simpler and more responsive work. • Idea: • Using graphic representations for information required by workers on a daily basis.
High Graphic Utilization: • Example – 3D Representation of project changes during the last 24 hours.
High Graphic Utilization: Project 1 Project 4 Project 2 Project 4 Project 4 Project 3 Project 4 Project 4 Project 4
High Graphic Utilization: Project 4 Project 1 Project 4 Project 2 Project 4 Project 4 Project 3 Project 4 Project 4 Project 4
High Graphic Utilization: Project 4 Class 2 Class 5 Class 1 Class 3 Class 4 Class 6
High Graphic Utilization: Project 4 Class 3 Class 2 Class 5 Class 1 Class 3 Class 4 Class 6
Task • System High Graphic Utilization: • Event System • High Graphic Utilization • TraceSystem • QuerySystem