CS 532(Mid-Term)- Project Presentation Team Name – Sprightly
Team Members- Varun Kumar (Student id: 102211) Sowmya Gopisetty (Student id: 102219) Avneet Dhanoa
Project Introduction Enterprise Application Management (EAM)
is a web based application for project management using Agile methodology
Project Vision, Scope and Agile Methodology:
What is Agile Methodology:
Manifesto for Agile Software Development“We are uncovering better ways of developing
software by doing it and helping others do it.Through this work we have come to value:
Individuals and interactions over processes and tools Working software over comprehensive documentation Customer collaboration over contract negotiation Responding to change over following a plan
That is, while there is value in the items onthe right, we value the items on the left more”.
-- http://www.agilemanifesto.org
Project Team and Responsibilities Varun Kumar – Project Manager and
Database Administrator
Avneet Dhanoa – Developer and Designer
Sowmya Gopisetty – Developer and
Project Coordinator
Stake Holders Clients Developers Database Administrators Future Associates Website visitors and users
∙ Highest priorities first
₋ Implement highest priorities to acceptance
∙ Time-boxed development
₋ Establish a heartbeat through standup meetings, short iterations andincremental releases∙ Just in time elaboration of requirements
₋ Maximize work not done by avoiding unnecessary inventory
₋ Plan, design, build, test and review
∙ Pull quality forward
₋ Reduce technical debt by building in quality early in the lifecycle
∙ Collaborate, inspect and adapt
₋ Visibility, reviews, demonstrations, retrospectives
Key Agile Principles
Product Features
Features are high-level expressions of desired system or product behavior. They are easily expressed in natural language often from the end user perspective.
Gathered from the stake holders to represent user, customer and business functionality
Support the high level product vision, planning, and scoping
Acts as a placeholder for a later elaboration They are documented in EAM with user Stories
Define Stories
Elaborate Stories –Adding Detail
∙Add more detail to Story ₋Description, ₋Rank ₋Priority ₋Risk ₋Estimate ₋Owner
Process Flow Diagram
Use Case Diagrams
Actor1
Login
Sucess Login
Fail Login
-End1
*
-End2
*
-End3
*-End4
*
-End5
*
-End6
*
Story
Update story
Delete story
Add Task
Actor2
-End7
*
-End8
*
-End9
*
-End10
*
-End11
*
-End12
*
-End13
*
-End14
*
Actor3
Story
Create task
Update task
Delete task
Create story
-End15*
-End16*
-End17
*
-End18
*
-End19
*
-End20
*
-End21
*
-End22
*
-End23
*
-End24
*
Sequence Diagram
Registarion
Login
Create Story
Create Task
Iteration
Create Task
Start Story
Start Task
Close Task
Close Story
Complete Iteration
Close Story
Log off
Requirements Summary Activities
Requirements Summary Activities
•Filtering and Sorting•Rich Text Fields: hyperlinks and images•In-line add •Multi-edit•Bulk Changes•CSV import and export•Attachments
User Story Summary Page
The Backlog
The Backlog is a collection of requirements • Product Backlog• Release Backlog• Iteration Backlog
Types of Work Products• Stories• Defects• Defects Suites• Test Cases
Technology and Environment
Technology
Java J2EE, JSF, MyFaces, RichFaces Spring framework, Hibernate(JPA), AJAX, XHTML, Javascript CSS
Environment Eclipse 3.2 MYSQL5.1. and XAMP Tomcat 6.1 Google Code SVN repository. Windows XP
Methodology Agile SCRUM
Java and J2EE Technology J2EE is a platform-independent, Java-centric
environment for developing, building and deploying Web-based enterprise applications online.J2EE includes many components of the Java Standard Edition (J2SE).The J2EE platform consists of a set of services, APIs, and protocols that provide the functionality for developing multitiered, Web-based applications.
Development Language
Java is a technology that allows software designed and written just once for an idealized "virtual machine" to run on a variety of real computers, including Windows PCs, Macintoshes, and Unix computers. On the web, Java is quite popular on web servers, used "under the hood" by many of the largest interactive websites. Here it serves the same role that PHP, ASP or Perl might, although traditionally Java has been used for larger-scale projects.
Advantages
Portable Highly Secured Object oriented Automatic memory management Java is distributed Robust Multithreaded
Spring frameworkAdvantages Layered architecture. Spring Enables POJO Programming, POJO programming enables continuous integration and
testability. Dependency Injection and Inversion of Control Simplifies JDBC Open source and no vendor lock-in
Spring Framework
Features Lightweight Inversion of control (IOC) Loose coupling is achieved in spring using the
technique Inversion of Control Aspect oriented (AOP) MVC Framework Spring MVC web application framework, built support
JSP, Velocity, Tiles, iText, and POI. Transaction Management JDBC Exception Handling
JSF and Spring MVCAdvantages JavaServer Faces architecture makes it easy for the developers
to use. In JavaServer Faces technology, user interfaces can be created easily with its built-in UI component library, which handles most of the complexities of user interface management.
Offers a clean separation between behavior and presentation. Provides a rich architecture for managing component state,
processing component data, validating user input, and handling events
Hibernate (JPA)
Advantages
Improved productivity High-level object-oriented API Less Java code to write No SQL to write
Improved performance Sophisticated caching Lazy loading Eager loading
Improved maintainability A lot less code to write
Questions ?
Top Related